bways-report 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +153 -51
- package/esm2022/lib/core/errors/reporting-errors.mjs +2 -2
- package/esm2022/lib/core/index.mjs +3 -1
- package/esm2022/lib/core/models/report-datasource.model.mjs +1 -1
- package/esm2022/lib/core/models/report-definition.model.mjs +1 -1
- package/esm2022/lib/core/models/report-grid.model.mjs +1 -1
- package/esm2022/lib/core/services/report-session-context.service.mjs +50 -5
- package/esm2022/lib/core/utils/data-normalization.util.mjs +56 -0
- package/esm2022/lib/core/utils/report-parameter.util.mjs +180 -0
- package/esm2022/lib/data-access/adapters/http-datasource.adapter.mjs +82 -0
- package/esm2022/lib/data-access/adapters/http-lookup.adapter.mjs +34 -9
- package/esm2022/lib/data-access/adapters/http-masterdata.adapter.mjs +38 -0
- package/esm2022/lib/data-access/adapters/http-persistence.adapter.mjs +217 -0
- package/esm2022/lib/data-access/adapters/http-schema-discovery.adapter.mjs +3 -1
- package/esm2022/lib/data-access/adapters/index.mjs +8 -3
- package/esm2022/lib/data-access/adapters/local-storage-persistence.adapter.mjs +167 -0
- package/esm2022/lib/data-access/adapters/mock-datasource.adapter.mjs +60 -0
- package/esm2022/lib/data-access/contracts/api-dtos.mjs +6 -0
- package/esm2022/lib/data-access/contracts/index.mjs +2 -1
- package/esm2022/lib/features/designer/components/design-canvas/design-canvas.component.mjs +665 -90
- package/esm2022/lib/features/designer/components/property-editor/property-editor-action.component.mjs +593 -0
- package/esm2022/lib/features/designer/components/property-editor/property-editor-datasource.component.mjs +164 -23
- package/esm2022/lib/features/designer/components/property-editor/property-editor-grid.component.mjs +458 -14
- package/esm2022/lib/features/designer/components/property-editor/property-editor.component.mjs +173 -2
- package/esm2022/lib/features/designer/components/toolbar/designer-toolbar.component.mjs +182 -6
- package/esm2022/lib/features/designer/designer.component.mjs +101 -12
- package/esm2022/lib/features/designer/index.mjs +4 -1
- package/esm2022/lib/features/designer/rpt-report-designer.component.mjs +102 -0
- package/esm2022/lib/features/designer/services/designer-state.service.mjs +10 -9
- package/esm2022/lib/features/designer/services/report-template.service.mjs +318 -0
- package/esm2022/lib/features/designer/utilities/canvas-layout.util.mjs +41 -9
- package/esm2022/lib/features/export/index.mjs +2 -2
- package/esm2022/lib/features/export/models/export.models.mjs +1 -1
- package/esm2022/lib/features/export/services/report-export.service.mjs +420 -5
- package/esm2022/lib/features/routing/components/routed-report-runtime.component.mjs +2 -2
- package/esm2022/lib/features/runtime/dynamic-renderer.component.mjs +231 -33
- package/esm2022/lib/features/runtime/index.mjs +2 -1
- package/esm2022/lib/features/runtime/report-execution.service.mjs +64 -0
- package/esm2022/lib/features/runtime/report-grid-bridge.component.mjs +224 -26
- package/esm2022/lib/features/runtime/report-runtime.component.mjs +341 -7
- package/esm2022/lib/features/runtime/rpt-report.component.mjs +537 -0
- package/esm2022/lib/primitives/components/button/rpt-button.component.mjs +26 -9
- package/esm2022/lib/primitives/components/chart-bridge/report-chart-bridge.component.mjs +18 -7
- package/esm2022/lib/primitives/components/date-range/rpt-date-range.component.mjs +346 -0
- package/esm2022/lib/primitives/components/dropdown/rpt-dropdown.component.mjs +727 -73
- package/esm2022/lib/primitives/components/icon/rpt-icon.component.mjs +8 -1
- package/esm2022/lib/primitives/components/index.mjs +2 -1
- package/esm2022/lib/primitives/register-builtins.mjs +51 -2
- package/esm2022/lib/provide-reporting.mjs +145 -24
- package/fesm2022/bways-report.mjs +8051 -1672
- package/fesm2022/bways-report.mjs.map +1 -1
- package/lib/core/index.d.ts +2 -0
- package/lib/core/models/report-datasource.model.d.ts +9 -0
- package/lib/core/models/report-definition.model.d.ts +2 -0
- package/lib/core/models/report-grid.model.d.ts +44 -0
- package/lib/core/services/report-session-context.service.d.ts +6 -1
- package/lib/core/utils/data-normalization.util.d.ts +15 -0
- package/lib/core/utils/report-parameter.util.d.ts +35 -0
- package/lib/data-access/adapters/http-datasource.adapter.d.ts +20 -0
- package/lib/data-access/adapters/http-lookup.adapter.d.ts +3 -0
- package/lib/data-access/adapters/http-masterdata.adapter.d.ts +13 -0
- package/lib/data-access/adapters/http-persistence.adapter.d.ts +27 -0
- package/lib/data-access/adapters/http-schema-discovery.adapter.d.ts +2 -0
- package/lib/data-access/adapters/index.d.ts +7 -2
- package/lib/data-access/adapters/local-storage-persistence.adapter.d.ts +19 -0
- package/lib/data-access/adapters/mock-datasource.adapter.d.ts +9 -0
- package/lib/data-access/contracts/api-dtos.d.ts +67 -0
- package/lib/data-access/contracts/index.d.ts +1 -0
- package/lib/features/designer/components/design-canvas/design-canvas.component.d.ts +24 -0
- package/lib/features/designer/components/property-editor/parameter-binding-editor.component.d.ts +1 -1
- package/lib/features/designer/components/property-editor/property-editor-action.component.d.ts +33 -0
- package/lib/features/designer/components/property-editor/property-editor-datasource.component.d.ts +4 -0
- package/lib/features/designer/components/property-editor/property-editor-grid.component.d.ts +18 -2
- package/lib/features/designer/components/property-editor/property-editor.component.d.ts +7 -0
- package/lib/features/designer/components/toolbar/designer-toolbar.component.d.ts +9 -0
- package/lib/features/designer/designer.component.d.ts +5 -0
- package/lib/features/designer/index.d.ts +4 -0
- package/lib/features/designer/rpt-report-designer.component.d.ts +38 -0
- package/lib/features/designer/services/designer-state.service.d.ts +1 -1
- package/lib/features/designer/services/report-template.service.d.ts +32 -0
- package/lib/features/designer/utilities/canvas-layout.util.d.ts +4 -0
- package/lib/features/export/index.d.ts +2 -2
- package/lib/features/export/models/export.models.d.ts +23 -0
- package/lib/features/export/services/report-export.service.d.ts +31 -2
- package/lib/features/runtime/dynamic-renderer.component.d.ts +39 -2
- package/lib/features/runtime/index.d.ts +2 -0
- package/lib/features/runtime/report-execution.service.d.ts +16 -0
- package/lib/features/runtime/report-grid-bridge.component.d.ts +129 -6
- package/lib/features/runtime/report-runtime.component.d.ts +83 -1
- package/lib/features/runtime/rpt-report.component.d.ts +66 -0
- package/lib/primitives/components/button/rpt-button.component.d.ts +5 -2
- package/lib/primitives/components/chart-bridge/report-chart-bridge.component.d.ts +1 -0
- package/lib/primitives/components/date-range/rpt-date-range.component.d.ts +43 -0
- package/lib/primitives/components/dropdown/rpt-dropdown.component.d.ts +55 -7
- package/lib/primitives/components/index.d.ts +2 -0
- package/lib/provide-reporting.d.ts +79 -26
- package/package.json +2 -1
- package/schematics/collection.json +10 -0
- package/schematics/ng-add/index.js +45 -0
- package/schematics/ng-add/schema.json +17 -0
|
@@ -58,36 +58,67 @@ export function resolveCanvasCardHeight(comp, overrideComponentHeight, overhead
|
|
|
58
58
|
const parsed = parseInt(h, 10);
|
|
59
59
|
return isNaN(parsed) ? h : `${parsed + overhead}px`;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Natural minimum height in pixels required for a component type to render without cramping or overflow.
|
|
63
|
+
*/
|
|
64
|
+
export function getComponentNaturalMinHeight(type) {
|
|
65
|
+
switch (type) {
|
|
66
|
+
case 'chart':
|
|
67
|
+
return 240;
|
|
68
|
+
case 'kpi-card':
|
|
69
|
+
return 100;
|
|
70
|
+
case 'table':
|
|
71
|
+
case 'grid':
|
|
72
|
+
return 200;
|
|
73
|
+
default:
|
|
74
|
+
return 0;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
61
77
|
/**
|
|
62
78
|
* Resolves the CSS min-height property for the canvas component card.
|
|
63
79
|
*/
|
|
64
80
|
export function resolveCanvasCardMinHeight(comp, overrideComponentHeight, overhead = CANVAS_CARD_OVERHEAD) {
|
|
81
|
+
const naturalMin = getComponentNaturalMinHeight(comp.type);
|
|
65
82
|
if (overrideComponentHeight !== undefined && overrideComponentHeight !== null) {
|
|
66
|
-
return `${overrideComponentHeight + overhead}px`;
|
|
83
|
+
return `${Math.max(naturalMin, overrideComponentHeight) + overhead}px`;
|
|
67
84
|
}
|
|
68
85
|
const minH = comp.layout?.minHeight;
|
|
69
|
-
if (!minH || minH === 'auto')
|
|
70
|
-
return 'auto';
|
|
86
|
+
if (!minH || minH === 'auto') {
|
|
87
|
+
return naturalMin > 0 ? `${naturalMin + overhead}px` : 'auto';
|
|
88
|
+
}
|
|
71
89
|
const parsed = parseInt(minH, 10);
|
|
72
|
-
return isNaN(parsed) ? minH : `${parsed + overhead}px`;
|
|
90
|
+
return isNaN(parsed) ? minH : `${Math.max(naturalMin, parsed) + overhead}px`;
|
|
73
91
|
}
|
|
74
92
|
/**
|
|
75
93
|
* Resolves the CSS height property for a runtime component.
|
|
76
94
|
*/
|
|
77
95
|
export function resolveComponentHeight(comp, overrideHeight) {
|
|
96
|
+
const naturalMin = getComponentNaturalMinHeight(comp.type);
|
|
78
97
|
if (overrideHeight !== undefined && overrideHeight !== null) {
|
|
79
|
-
return `${overrideHeight}px`;
|
|
98
|
+
return `${Math.max(naturalMin, overrideHeight)}px`;
|
|
80
99
|
}
|
|
81
|
-
|
|
100
|
+
const h = comp.layout?.height;
|
|
101
|
+
if (!h || h === 'auto')
|
|
102
|
+
return 'auto';
|
|
103
|
+
const parsed = parseInt(h, 10);
|
|
104
|
+
if (isNaN(parsed))
|
|
105
|
+
return h;
|
|
106
|
+
return `${Math.max(naturalMin, parsed)}px`;
|
|
82
107
|
}
|
|
83
108
|
/**
|
|
84
109
|
* Resolves the CSS min-height property for a runtime component.
|
|
85
110
|
*/
|
|
86
111
|
export function resolveComponentMinHeight(comp, overrideHeight) {
|
|
112
|
+
const naturalMin = getComponentNaturalMinHeight(comp.type);
|
|
87
113
|
if (overrideHeight !== undefined && overrideHeight !== null) {
|
|
88
|
-
return `${overrideHeight}px`;
|
|
114
|
+
return `${Math.max(naturalMin, overrideHeight)}px`;
|
|
89
115
|
}
|
|
90
|
-
|
|
116
|
+
const minH = comp.layout?.minHeight;
|
|
117
|
+
if (!minH || minH === 'auto') {
|
|
118
|
+
return naturalMin > 0 ? `${naturalMin}px` : 'auto';
|
|
119
|
+
}
|
|
120
|
+
const parsed = parseInt(minH, 10);
|
|
121
|
+
return isNaN(parsed) ? minH : `${Math.max(naturalMin, parsed)}px`;
|
|
91
122
|
}
|
|
92
123
|
/**
|
|
93
124
|
* Calculates new snapped span given drag deltaX, column width, and grid gap.
|
|
@@ -113,6 +144,7 @@ export function getComponentIconName(type) {
|
|
|
113
144
|
case 'input': return 'text-fields';
|
|
114
145
|
case 'dropdown': return 'dropdown';
|
|
115
146
|
case 'date': return 'calendar';
|
|
147
|
+
case 'date-range': return 'calendar';
|
|
116
148
|
case 'number': return 'number';
|
|
117
149
|
case 'checkbox': return 'checkbox';
|
|
118
150
|
case 'button': return 'button';
|
|
@@ -121,4 +153,4 @@ export function getComponentIconName(type) {
|
|
|
121
153
|
default: return 'box';
|
|
122
154
|
}
|
|
123
155
|
}
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLWxheW91dC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYndheXMtcmVwb3J0L3NyYy9saWIvZmVhdHVyZXMvZGVzaWduZXIvdXRpbGl0aWVzL2NhbnZhcy1sYXlvdXQudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7OztHQUlHO0FBRUg7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxJQUErQixFQUMvQixlQUF1QixFQUFFLEVBQ3pCLFlBQTRCO0lBRTVCLElBQUksWUFBWSxLQUFLLFNBQVMsSUFBSSxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDeEQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksV0FBVyxDQUFDO0lBQ3ZELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLElBQStCLEVBQy9CLGVBQXVCLEVBQUUsRUFDekIsSUFBYTtJQUViLE1BQU0sYUFBYSxHQUFHLElBQUksSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDdkUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdB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TyxRQUFRLENBQUM7UUFDL0IsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztRQUNuQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDO1FBQy9CLEtBQUssVUFBVSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUM7UUFDOUIsS0FBSyxPQUFPLENBQUMsQ0FBQyxPQUFPLFdBQVcsQ0FBQztRQUNqQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQztJQUN4QixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24gfSBmcm9tICcuLi8uLi8uLi9jb3JlL21vZGVscy9yZXBvcnQtY29tcG9uZW50Lm1vZGVsJztcblxuLyoqXG4gKiBQdXJlIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBkZXNpZ24gY2FudmFzIGxheW91dCwgZ3JpZCBjYWxjdWxhdGlvbnMsIGFuZCBzaXppbmcuXG4gKlxuICogSW1wbGVtZW50ZWQgYXMgZnJhbWV3b3JrLWluZGVwZW5kZW50IHB1cmUgZnVuY3Rpb25zIHBlciBSdWxlIDEwICYgMTEgKFB1cmUgTG9naWMgRmlyc3QpLlxuICovXG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIGVmZmVjdGl2ZSBjb2x1bW4gc3BhbiBmb3IgYSBjb21wb25lbnQuXG4gKiBVc2VzIGxheW91dC5jb2x1bW5TcGFuIGlmIHNwZWNpZmllZCwgb3RoZXJ3aXNlIGRlZmF1bHRzIGJhc2VkIG9uIGNvbXBvbmVudCB0eXBlIChlLmcuIDIgZm9yIGJ1dHRvbiwgNCBmb3Igb3RoZXJzKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRTcGFuKFxuICBjb21wOiBSZXBvcnRDb21wb25lbnREZWZpbml0aW9uLFxuICB0b3RhbENvbHVtbnM6IG51bWJlciA9IDEyLFxuICBvdmVycmlkZVNwYW4/OiBudW1iZXIgfCBudWxsXG4pOiBudW1iZXIge1xuICBpZiAob3ZlcnJpZGVTcGFuICE9PSB1bmRlZmluZWQgJiYgb3ZlcnJpZGVTcGFuICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIE1hdGgubWF4KDEsIE1hdGgubWluKHRvdGFsQ29sdW1ucywgb3ZlcnJpZGVTcGFuKSk7XG4gIH1cbiAgY29uc3QgZGVmYXVsdFNwYW4gPSBjb21wLnR5cGUgPT09ICdidXR0b24nID8gMiA6IDQ7XG4gIGNvbnN0IHJhd1NwYW4gPSBjb21wLmxheW91dD8uY29sdW1uU3BhbiA/PyBkZWZhdWx0U3BhbjtcbiAgcmV0dXJuIE1hdGgubWF4KDEsIE1hdGgubWluKHRvdGFsQ29sdW1ucywgcmF3U3BhbikpO1xufVxuXG4vKipcbiAqIENvbXB1dGVzIHRoZSBDU1MgYGdyaWQtY29sdW1uYCBzcGVjaWZpY2F0aW9uIHN0cmluZyBmb3IgYSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVHcmlkQ29sdW1uKFxuICBjb21wOiBSZXBvcnRDb21wb25lbnREZWZpbml0aW9uLFxuICB0b3RhbENvbHVtbnM6IG51bWJlciA9IDEyLFxuICBzcGFuPzogbnVtYmVyXG4pOiBzdHJpbmcge1xuICBjb25zdCBlZmZlY3RpdmVTcGFuID0gc3BhbiA/PyByZXNvbHZlQ29tcG9uZW50U3Bhbihjb21wLCB0b3RhbENvbHVtbnMpO1xuICBjb25zdCBjbGFtcGVkID0gTWF0aC5tYXgoMSwgTWF0aC5taW4oZWZmZWN0aXZlU3BhbiwgdG90YWxDb2x1bW5zKSk7XG4gIGNvbnN0IGNvbCA9IGNvbXAubGF5b3V0Py5jb2x1bW47XG5cbiAgaWYgKGNvbCAmJiBjb2wgPj0gMSAmJiBjb2wgPD0gdG90YWxDb2x1bW5zKSB7XG4gICAgcmV0dXJuIGAke2NvbH0gLyBzcGFuICR7Y2xhbXBlZH1gO1xuICB9XG5cbiAgcmV0dXJuIGNvbXAubGF5b3V0Py5uZXdSb3cgPyBgMSAvIHNwYW4gJHtjbGFtcGVkfWAgOiBgc3BhbiAke2NsYW1wZWR9YDtcbn1cblxuLyoqXG4gKiBDb21wdXRlcyB0aGUgQ1NTIGBncmlkLXJvd2Agc3BlY2lmaWNhdGlvbiBzdHJpbmcgZm9yIGEgY29tcG9uZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlR3JpZFJvdyhjb21wOiBSZXBvcnRDb21wb25lbnREZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgY29uc3Qgcm93U3BhbiA9IGNvbXAubGF5b3V0Py5yb3dTcGFuO1xuICBpZiAocm93U3BhbiAmJiByb3dTcGFuID4gMSkge1xuICAgIHJldHVybiBgc3BhbiAke3Jvd1NwYW59YDtcbiAgfVxuICByZXR1cm4gJ2F1dG8nO1xufVxuXG4vKipcbiAqIE92ZXJoZWFkIGluIHBpeGVscyBmb3IgdGhlIFZpc3VhbCBDYW52YXMgY2FyZCAoY2FyZCBoZWFkZXIgMzJweCArIGNhcmQgYm9keSB2ZXJ0aWNhbCBwYWRkaW5nIDE2cHgpLlxuICogQWRkaW5nIHRoaXMgb3ZlcmhlYWQgdG8gdGhlIGNvbXBvbmVudCdzIGxvZ2ljYWwgaGVpZ2h0IGVuc3VyZXMgdGhhdCB0aGUgY2FudmFzIGNhcmQgYm9keVxuICogcmVuZGVycyBhdCB0aGUgZXhhY3Qgc2FtZSBwaXhlbCBkaW1lbnNpb25zIGFzIHRoZSBsaXZlIHByZXZpZXcgY29tcG9uZW50LlxuICovXG5leHBvcnQgY29uc3QgQ0FOVkFTX0NBUkRfT1ZFUkhFQUQgPSA0ODtcblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgQ1NTIGhlaWdodCBwcm9wZXJ0eSBmb3IgdGhlIGNhbnZhcyBjb21wb25lbnQgY2FyZC5cbiAqIEFjY291bnRzIGZvciB0aGUgY2FyZCBoZWFkZXIgYW5kIHBhZGRpbmcgb3ZlcmhlYWQgc28gdGhlIGlubmVyIG1vY2sgYm9keVxuICogYWNjdXJhdGVseSBtaXJyb3JzIHRoZSBydW50aW1lIGNvbXBvbmVudCBoZWlnaHQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQ2FudmFzQ2FyZEhlaWdodChcbiAgY29tcDogUmVwb3J0Q29tcG9uZW50RGVmaW5pdGlvbixcbiAgb3ZlcnJpZGVDb21wb25lbnRIZWlnaHQ/OiBudW1iZXIgfCBudWxsLFxuICBvdmVyaGVhZDogbnVtYmVyID0gQ0FOVkFTX0NBUkRfT1ZFUkhFQURcbik6IHN0cmluZyB7XG4gIGlmIChvdmVycmlkZUNvbXBvbmVudEhlaWdodCAhPT0gdW5kZWZpbmVkICYmIG92ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGAke292ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICsgb3ZlcmhlYWR9cHhgO1xuICB9XG4gIGNvbnN0IGggPSBjb21wLmxheW91dD8uaGVpZ2h0O1xuICBpZiAoIWggfHwgaCA9PT0gJ2F1dG8nKSByZXR1cm4gJ2F1dG8nO1xuICBjb25zdCBwYXJzZWQgPSBwYXJzZUludChoLCAxMCk7XG4gIHJldHVybiBpc05hTihwYXJzZWQpID8gaCA6IGAke3BhcnNlZCArIG92ZXJoZWFkfXB4YDtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgQ1NTIG1pbi1oZWlnaHQgcHJvcGVydHkgZm9yIHRoZSBjYW52YXMgY29tcG9uZW50IGNhcmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQ2FudmFzQ2FyZE1pbkhlaWdodChcbiAgY29tcDogUmVwb3J0Q29tcG9uZW50RGVmaW5pdGlvbixcbiAgb3ZlcnJpZGVDb21wb25lbnRIZWlnaHQ/OiBudW1iZXIgfCBudWxsLFxuICBvdmVyaGVhZDogbnVtYmVyID0gQ0FOVkFTX0NBUkRfT1ZFUkhFQURcbik6IHN0cmluZyB7XG4gIGlmIChvdmVycmlkZUNvbXBvbmVudEhlaWdodCAhPT0gdW5kZWZpbmVkICYmIG92ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGAke292ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICsgb3ZlcmhlYWR9cHhgO1xuICB9XG4gIGNvbnN0IG1pbkggPSBjb21wLmxheW91dD8ubWluSGVpZ2h0O1xuICBpZiAoIW1pbkggfHwgbWluSCA9PT0gJ2F1dG8nKSByZXR1cm4gJ2F1dG8nO1xuICBjb25zdCBwYXJzZWQgPSBwYXJzZUludChtaW5ILCAxMCk7XG4gIHJldHVybiBpc05hTihwYXJzZWQpID8gbWluSCA6IGAke3BhcnNlZCArIG92ZXJoZWFkfXB4YDtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgQ1NTIGhlaWdodCBwcm9wZXJ0eSBmb3IgYSBydW50aW1lIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRIZWlnaHQoXG4gIGNvbXA6IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24sXG4gIG92ZXJyaWRlSGVpZ2h0PzogbnVtYmVyIHwgbnVsbFxuKTogc3RyaW5nIHtcbiAgaWYgKG92ZXJyaWRlSGVpZ2h0ICE9PSB1bmRlZmluZWQgJiYgb3ZlcnJpZGVIZWlnaHQgIT09IG51bGwpIHtcbiAgICByZXR1cm4gYCR7b3ZlcnJpZGVIZWlnaHR9cHhgO1xuICB9XG4gIHJldHVybiBjb21wLmxheW91dD8uaGVpZ2h0IHx8ICdhdXRvJztcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgQ1NTIG1pbi1oZWlnaHQgcHJvcGVydHkgZm9yIGEgcnVudGltZSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQ29tcG9uZW50TWluSGVpZ2h0KFxuICBjb21wOiBSZXBvcnRDb21wb25lbnREZWZpbml0aW9uLFxuICBvdmVycmlkZUhlaWdodD86IG51bWJlciB8IG51bGxcbik6IHN0cmluZyB7XG4gIGlmIChvdmVycmlkZUhlaWdodCAhPT0gdW5kZWZpbmVkICYmIG92ZXJyaWRlSGVpZ2h0ICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGAke292ZXJyaWRlSGVpZ2h0fXB4YDtcbiAgfVxuICByZXR1cm4gY29tcC5sYXlvdXQ/Lm1pbkhlaWdodCB8fCAnYXV0byc7XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlcyBuZXcgc25hcHBlZCBzcGFuIGdpdmVuIGRyYWcgZGVsdGFYLCBjb2x1bW4gd2lkdGgsIGFuZCBncmlkIGdhcC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVNuYXBwZWRTcGFuKFxuICBkZWx0YVg6IG51bWJlcixcbiAgc3RhcnRTcGFuOiBudW1iZXIsXG4gIGNvbFdpZHRoOiBudW1iZXIsXG4gIGdhcDogbnVtYmVyLFxuICB0b3RhbENvbHM6IG51bWJlclxuKTogbnVtYmVyIHtcbiAgY29uc3Qgc3RlcCA9IGNvbFdpZHRoICsgZ2FwO1xuICBpZiAoc3RlcCA8PSAwKSByZXR1cm4gc3RhcnRTcGFuO1xuICBjb25zdCBzcGFuRGVsdGEgPSBNYXRoLnJvdW5kKGRlbHRhWCAvIHN0ZXApO1xuICByZXR1cm4gTWF0aC5tYXgoMSwgTWF0aC5taW4odG90YWxDb2xzLCBzdGFydFNwYW4gKyBzcGFuRGVsdGEpKTtcbn1cblxuLyoqXG4gKiBDYWxjdWxhdGVzIG5ldyBoZWlnaHQgZ2l2ZW4gZHJhZyBkZWx0YVkgYW5kIG1pbmltdW0gaGVpZ2h0IGNvbnN0cmFpbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVTbmFwcGVkSGVpZ2h0KFxuICBkZWx0YVk6IG51bWJlcixcbiAgc3RhcnRIZWlnaHQ6IG51bWJlcixcbiAgbWluSGVpZ2h0OiBudW1iZXIgPSA1MFxuKTogbnVtYmVyIHtcbiAgcmV0dXJuIE1hdGgubWF4KG1pbkhlaWdodCwgTWF0aC5yb3VuZChzdGFydEhlaWdodCArIGRlbHRhWSkpO1xufVxuXG4vKipcbiAqIE1hcHMgY29tcG9uZW50IHR5cGUgdG8gc3RhbmRhcmQgaWNvbiBpZGVudGlmaWVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29tcG9uZW50SWNvbk5hbWUodHlwZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSAnaW5wdXQnOiByZXR1cm4gJ3RleHQtZmllbGRzJztcbiAgICBjYXNlICdkcm9wZG93bic6IHJldHVybiAnZHJvcGRvd24nO1xuICAgIGNhc2UgJ2RhdGUnOiByZXR1cm4gJ2NhbGVuZGFyJztcbiAgICBjYXNlICdudW1iZXInOiByZXR1cm4gJ251bWJlcic7XG4gICAgY2FzZSAnY2hlY2tib3gnOiByZXR1cm4gJ2NoZWNrYm94JztcbiAgICBjYXNlICdidXR0b24nOiByZXR1cm4gJ2J1dHRvbic7XG4gICAgY2FzZSAna3BpLWNhcmQnOiByZXR1cm4gJ2twaSc7XG4gICAgY2FzZSAnY2hhcnQnOiByZXR1cm4gJ2NoYXJ0LWJhcic7XG4gICAgZGVmYXVsdDogcmV0dXJuICdib3gnO1xuICB9XG59XG4iXX0=
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FudmFzLWxheW91dC51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYndheXMtcmVwb3J0L3NyYy9saWIvZmVhdHVyZXMvZGVzaWduZXIvdXRpbGl0aWVzL2NhbnZhcy1sYXlvdXQudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7OztHQUlHO0FBRUg7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxJQUErQixFQUMvQixlQUF1QixFQUFFLEVBQ3pCLFlBQTRCO0lBRTVCLElBQUksWUFBWSxLQUFLLFNBQVMsSUFBSSxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDeEQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLElBQUksV0FBVyxDQUFDO0lBQ3ZELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQ2pDLElBQStCLEVBQy9CLGVBQXVCLEVBQUUsRUFDekIsSUFBYTtJQUViLE1BQU0sYUFBYSxHQUFHLElBQUksSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDdkUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdB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LENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUFDLElBQVk7SUFDL0MsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNiLEtBQUssT0FBTyxDQUFDLENBQUMsT0FBTyxhQUFhLENBQUM7UUFDbkMsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLFVBQVUsQ0FBQztRQUNuQyxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sVUFBVSxDQUFDO1FBQy9CLEtBQUssWUFBWSxDQUFDLENBQUMsT0FBTyxVQUFVLENBQUM7UUFDckMsS0FBSyxRQUFRLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQztRQUMvQixLQUFLLFVBQVUsQ0FBQyxDQUFDLE9BQU8sVUFBVSxDQUFDO1FBQ25DLEtBQUssUUFBUSxDQUFDLENBQUMsT0FBTyxRQUFRLENBQUM7UUFDL0IsS0FBSyxVQUFVLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQztRQUM5QixLQUFLLE9BQU8sQ0FBQyxDQUFDLE9BQU8sV0FBVyxDQUFDO1FBQ2pDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDO0lBQ3hCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVwb3J0Q29tcG9uZW50RGVmaW5pdGlvbiB9IGZyb20gJy4uLy4uLy4uL2NvcmUvbW9kZWxzL3JlcG9ydC1jb21wb25lbnQubW9kZWwnO1xuXG4vKipcbiAqIFB1cmUgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGRlc2lnbiBjYW52YXMgbGF5b3V0LCBncmlkIGNhbGN1bGF0aW9ucywgYW5kIHNpemluZy5cbiAqXG4gKiBJbXBsZW1lbnRlZCBhcyBmcmFtZXdvcmstaW5kZXBlbmRlbnQgcHVyZSBmdW5jdGlvbnMgcGVyIFJ1bGUgMTAgJiAxMSAoUHVyZSBMb2dpYyBGaXJzdCkuXG4gKi9cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgZWZmZWN0aXZlIGNvbHVtbiBzcGFuIGZvciBhIGNvbXBvbmVudC5cbiAqIFVzZXMgbGF5b3V0LmNvbHVtblNwYW4gaWYgc3BlY2lmaWVkLCBvdGhlcndpc2UgZGVmYXVsdHMgYmFzZWQgb24gY29tcG9uZW50IHR5cGUgKGUuZy4gMiBmb3IgYnV0dG9uLCA0IGZvciBvdGhlcnMpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUNvbXBvbmVudFNwYW4oXG4gIGNvbXA6IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24sXG4gIHRvdGFsQ29sdW1uczogbnVtYmVyID0gMTIsXG4gIG92ZXJyaWRlU3Bhbj86IG51bWJlciB8IG51bGxcbik6IG51bWJlciB7XG4gIGlmIChvdmVycmlkZVNwYW4gIT09IHVuZGVmaW5lZCAmJiBvdmVycmlkZVNwYW4gIT09IG51bGwpIHtcbiAgICByZXR1cm4gTWF0aC5tYXgoMSwgTWF0aC5taW4odG90YWxDb2x1bW5zLCBvdmVycmlkZVNwYW4pKTtcbiAgfVxuICBjb25zdCBkZWZhdWx0U3BhbiA9IGNvbXAudHlwZSA9PT0gJ2J1dHRvbicgPyAyIDogNDtcbiAgY29uc3QgcmF3U3BhbiA9IGNvbXAubGF5b3V0Py5jb2x1bW5TcGFuID8/IGRlZmF1bHRTcGFuO1xuICByZXR1cm4gTWF0aC5tYXgoMSwgTWF0aC5taW4odG90YWxDb2x1bW5zLCByYXdTcGFuKSk7XG59XG5cbi8qKlxuICogQ29tcHV0ZXMgdGhlIENTUyBgZ3JpZC1jb2x1bW5gIHNwZWNpZmljYXRpb24gc3RyaW5nIGZvciBhIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUdyaWRDb2x1bW4oXG4gIGNvbXA6IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24sXG4gIHRvdGFsQ29sdW1uczogbnVtYmVyID0gMTIsXG4gIHNwYW4/OiBudW1iZXJcbik6IHN0cmluZyB7XG4gIGNvbnN0IGVmZmVjdGl2ZVNwYW4gPSBzcGFuID8/IHJlc29sdmVDb21wb25lbnRTcGFuKGNvbXAsIHRvdGFsQ29sdW1ucyk7XG4gIGNvbnN0IGNsYW1wZWQgPSBNYXRoLm1heCgxLCBNYXRoLm1pbihlZmZlY3RpdmVTcGFuLCB0b3RhbENvbHVtbnMpKTtcbiAgY29uc3QgY29sID0gY29tcC5sYXlvdXQ/LmNvbHVtbjtcblxuICBpZiAoY29sICYmIGNvbCA+PSAxICYmIGNvbCA8PSB0b3RhbENvbHVtbnMpIHtcbiAgICByZXR1cm4gYCR7Y29sfSAvIHNwYW4gJHtjbGFtcGVkfWA7XG4gIH1cblxuICByZXR1cm4gY29tcC5sYXlvdXQ/Lm5ld1JvdyA/IGAxIC8gc3BhbiAke2NsYW1wZWR9YCA6IGBzcGFuICR7Y2xhbXBlZH1gO1xufVxuXG4vKipcbiAqIENvbXB1dGVzIHRoZSBDU1MgYGdyaWQtcm93YCBzcGVjaWZpY2F0aW9uIHN0cmluZyBmb3IgYSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVHcmlkUm93KGNvbXA6IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24pOiBzdHJpbmcge1xuICBjb25zdCByb3dTcGFuID0gY29tcC5sYXlvdXQ/LnJvd1NwYW47XG4gIGlmIChyb3dTcGFuICYmIHJvd1NwYW4gPiAxKSB7XG4gICAgcmV0dXJuIGBzcGFuICR7cm93U3Bhbn1gO1xuICB9XG4gIHJldHVybiAnYXV0byc7XG59XG5cbi8qKlxuICogT3ZlcmhlYWQgaW4gcGl4ZWxzIGZvciB0aGUgVmlzdWFsIENhbnZhcyBjYXJkIChjYXJkIGhlYWRlciAzMnB4ICsgY2FyZCBib2R5IHZlcnRpY2FsIHBhZGRpbmcgMTZweCkuXG4gKiBBZGRpbmcgdGhpcyBvdmVyaGVhZCB0byB0aGUgY29tcG9uZW50J3MgbG9naWNhbCBoZWlnaHQgZW5zdXJlcyB0aGF0IHRoZSBjYW52YXMgY2FyZCBib2R5XG4gKiByZW5kZXJzIGF0IHRoZSBleGFjdCBzYW1lIHBpeGVsIGRpbWVuc2lvbnMgYXMgdGhlIGxpdmUgcHJldmlldyBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBDQU5WQVNfQ0FSRF9PVkVSSEVBRCA9IDQ4O1xuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBDU1MgaGVpZ2h0IHByb3BlcnR5IGZvciB0aGUgY2FudmFzIGNvbXBvbmVudCBjYXJkLlxuICogQWNjb3VudHMgZm9yIHRoZSBjYXJkIGhlYWRlciBhbmQgcGFkZGluZyBvdmVyaGVhZCBzbyB0aGUgaW5uZXIgbW9jayBib2R5XG4gKiBhY2N1cmF0ZWx5IG1pcnJvcnMgdGhlIHJ1bnRpbWUgY29tcG9uZW50IGhlaWdodC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDYW52YXNDYXJkSGVpZ2h0KFxuICBjb21wOiBSZXBvcnRDb21wb25lbnREZWZpbml0aW9uLFxuICBvdmVycmlkZUNvbXBvbmVudEhlaWdodD86IG51bWJlciB8IG51bGwsXG4gIG92ZXJoZWFkOiBudW1iZXIgPSBDQU5WQVNfQ0FSRF9PVkVSSEVBRFxuKTogc3RyaW5nIHtcbiAgaWYgKG92ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICE9PSB1bmRlZmluZWQgJiYgb3ZlcnJpZGVDb21wb25lbnRIZWlnaHQgIT09IG51bGwpIHtcbiAgICByZXR1cm4gYCR7b3ZlcnJpZGVDb21wb25lbnRIZWlnaHQgKyBvdmVyaGVhZH1weGA7XG4gIH1cbiAgY29uc3QgaCA9IGNvbXAubGF5b3V0Py5oZWlnaHQ7XG4gIGlmICghaCB8fCBoID09PSAnYXV0bycpIHJldHVybiAnYXV0byc7XG4gIGNvbnN0IHBhcnNlZCA9IHBhcnNlSW50KGgsIDEwKTtcbiAgcmV0dXJuIGlzTmFOKHBhcnNlZCkgPyBoIDogYCR7cGFyc2VkICsgb3ZlcmhlYWR9cHhgO1xufVxuXG4vKipcbiAqIE5hdHVyYWwgbWluaW11bSBoZWlnaHQgaW4gcGl4ZWxzIHJlcXVpcmVkIGZvciBhIGNvbXBvbmVudCB0eXBlIHRvIHJlbmRlciB3aXRob3V0IGNyYW1waW5nIG9yIG92ZXJmbG93LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29tcG9uZW50TmF0dXJhbE1pbkhlaWdodCh0eXBlOiBzdHJpbmcpOiBudW1iZXIge1xuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlICdjaGFydCc6XG4gICAgICByZXR1cm4gMjQwO1xuICAgIGNhc2UgJ2twaS1jYXJkJzpcbiAgICAgIHJldHVybiAxMDA7XG4gICAgY2FzZSAndGFibGUnOlxuICAgIGNhc2UgJ2dyaWQnOlxuICAgICAgcmV0dXJuIDIwMDtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIDA7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgQ1NTIG1pbi1oZWlnaHQgcHJvcGVydHkgZm9yIHRoZSBjYW52YXMgY29tcG9uZW50IGNhcmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQ2FudmFzQ2FyZE1pbkhlaWdodChcbiAgY29tcDogUmVwb3J0Q29tcG9uZW50RGVmaW5pdGlvbixcbiAgb3ZlcnJpZGVDb21wb25lbnRIZWlnaHQ/OiBudW1iZXIgfCBudWxsLFxuICBvdmVyaGVhZDogbnVtYmVyID0gQ0FOVkFTX0NBUkRfT1ZFUkhFQURcbik6IHN0cmluZyB7XG4gIGNvbnN0IG5hdHVyYWxNaW4gPSBnZXRDb21wb25lbnROYXR1cmFsTWluSGVpZ2h0KGNvbXAudHlwZSk7XG4gIGlmIChvdmVycmlkZUNvbXBvbmVudEhlaWdodCAhPT0gdW5kZWZpbmVkICYmIG92ZXJyaWRlQ29tcG9uZW50SGVpZ2h0ICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGAke01hdGgubWF4KG5hdHVyYWxNaW4sIG92ZXJyaWRlQ29tcG9uZW50SGVpZ2h0KSArIG92ZXJoZWFkfXB4YDtcbiAgfVxuICBjb25zdCBtaW5IID0gY29tcC5sYXlvdXQ/Lm1pbkhlaWdodDtcbiAgaWYgKCFtaW5IIHx8IG1pbkggPT09ICdhdXRvJykge1xuICAgIHJldHVybiBuYXR1cmFsTWluID4gMCA/IGAke25hdHVyYWxNaW4gKyBvdmVyaGVhZH1weGAgOiAnYXV0byc7XG4gIH1cbiAgY29uc3QgcGFyc2VkID0gcGFyc2VJbnQobWluSCwgMTApO1xuICByZXR1cm4gaXNOYU4ocGFyc2VkKSA/IG1pbkggOiBgJHtNYXRoLm1heChuYXR1cmFsTWluLCBwYXJzZWQpICsgb3ZlcmhlYWR9cHhgO1xufVxuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBDU1MgaGVpZ2h0IHByb3BlcnR5IGZvciBhIHJ1bnRpbWUgY29tcG9uZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUNvbXBvbmVudEhlaWdodChcbiAgY29tcDogUmVwb3J0Q29tcG9uZW50RGVmaW5pdGlvbixcbiAgb3ZlcnJpZGVIZWlnaHQ/OiBudW1iZXIgfCBudWxsXG4pOiBzdHJpbmcge1xuICBjb25zdCBuYXR1cmFsTWluID0gZ2V0Q29tcG9uZW50TmF0dXJhbE1pbkhlaWdodChjb21wLnR5cGUpO1xuICBpZiAob3ZlcnJpZGVIZWlnaHQgIT09IHVuZGVmaW5lZCAmJiBvdmVycmlkZUhlaWdodCAhPT0gbnVsbCkge1xuICAgIHJldHVybiBgJHtNYXRoLm1heChuYXR1cmFsTWluLCBvdmVycmlkZUhlaWdodCl9cHhgO1xuICB9XG4gIGNvbnN0IGggPSBjb21wLmxheW91dD8uaGVpZ2h0O1xuICBpZiAoIWggfHwgaCA9PT0gJ2F1dG8nKSByZXR1cm4gJ2F1dG8nO1xuICBjb25zdCBwYXJzZWQgPSBwYXJzZUludChoLCAxMCk7XG4gIGlmIChpc05hTihwYXJzZWQpKSByZXR1cm4gaDtcbiAgcmV0dXJuIGAke01hdGgubWF4KG5hdHVyYWxNaW4sIHBhcnNlZCl9cHhgO1xufVxuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBDU1MgbWluLWhlaWdodCBwcm9wZXJ0eSBmb3IgYSBydW50aW1lIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDb21wb25lbnRNaW5IZWlnaHQoXG4gIGNvbXA6IFJlcG9ydENvbXBvbmVudERlZmluaXRpb24sXG4gIG92ZXJyaWRlSGVpZ2h0PzogbnVtYmVyIHwgbnVsbFxuKTogc3RyaW5nIHtcbiAgY29uc3QgbmF0dXJhbE1pbiA9IGdldENvbXBvbmVudE5hdHVyYWxNaW5IZWlnaHQoY29tcC50eXBlKTtcbiAgaWYgKG92ZXJyaWRlSGVpZ2h0ICE9PSB1bmRlZmluZWQgJiYgb3ZlcnJpZGVIZWlnaHQgIT09IG51bGwpIHtcbiAgICByZXR1cm4gYCR7TWF0aC5tYXgobmF0dXJhbE1pbiwgb3ZlcnJpZGVIZWlnaHQpfXB4YDtcbiAgfVxuICBjb25zdCBtaW5IID0gY29tcC5sYXlvdXQ/Lm1pbkhlaWdodDtcbiAgaWYgKCFtaW5IIHx8IG1pbkggPT09ICdhdXRvJykge1xuICAgIHJldHVybiBuYXR1cmFsTWluID4gMCA/IGAke25hdHVyYWxNaW59cHhgIDogJ2F1dG8nO1xuICB9XG4gIGNvbnN0IHBhcnNlZCA9IHBhcnNlSW50KG1pbkgsIDEwKTtcbiAgcmV0dXJuIGlzTmFOKHBhcnNlZCkgPyBtaW5IIDogYCR7TWF0aC5tYXgobmF0dXJhbE1pbiwgcGFyc2VkKX1weGA7XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlcyBuZXcgc25hcHBlZCBzcGFuIGdpdmVuIGRyYWcgZGVsdGFYLCBjb2x1bW4gd2lkdGgsIGFuZCBncmlkIGdhcC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVNuYXBwZWRTcGFuKFxuICBkZWx0YVg6IG51bWJlcixcbiAgc3RhcnRTcGFuOiBudW1iZXIsXG4gIGNvbFdpZHRoOiBudW1iZXIsXG4gIGdhcDogbnVtYmVyLFxuICB0b3RhbENvbHM6IG51bWJlclxuKTogbnVtYmVyIHtcbiAgY29uc3Qgc3RlcCA9IGNvbFdpZHRoICsgZ2FwO1xuICBpZiAoc3RlcCA8PSAwKSByZXR1cm4gc3RhcnRTcGFuO1xuICBjb25zdCBzcGFuRGVsdGEgPSBNYXRoLnJvdW5kKGRlbHRhWCAvIHN0ZXApO1xuICByZXR1cm4gTWF0aC5tYXgoMSwgTWF0aC5taW4odG90YWxDb2xzLCBzdGFydFNwYW4gKyBzcGFuRGVsdGEpKTtcbn1cblxuLyoqXG4gKiBDYWxjdWxhdGVzIG5ldyBoZWlnaHQgZ2l2ZW4gZHJhZyBkZWx0YVkgYW5kIG1pbmltdW0gaGVpZ2h0IGNvbnN0cmFpbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVTbmFwcGVkSGVpZ2h0KFxuICBkZWx0YVk6IG51bWJlcixcbiAgc3RhcnRIZWlnaHQ6IG51bWJlcixcbiAgbWluSGVpZ2h0OiBudW1iZXIgPSA1MFxuKTogbnVtYmVyIHtcbiAgcmV0dXJuIE1hdGgubWF4KG1pbkhlaWdodCwgTWF0aC5yb3VuZChzdGFydEhlaWdodCArIGRlbHRhWSkpO1xufVxuXG4vKipcbiAqIE1hcHMgY29tcG9uZW50IHR5cGUgdG8gc3RhbmRhcmQgaWNvbiBpZGVudGlmaWVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29tcG9uZW50SWNvbk5hbWUodHlwZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSAnaW5wdXQnOiByZXR1cm4gJ3RleHQtZmllbGRzJztcbiAgICBjYXNlICdkcm9wZG93bic6IHJldHVybiAnZHJvcGRvd24nO1xuICAgIGNhc2UgJ2RhdGUnOiByZXR1cm4gJ2NhbGVuZGFyJztcbiAgICBjYXNlICdkYXRlLXJhbmdlJzogcmV0dXJuICdjYWxlbmRhcic7XG4gICAgY2FzZSAnbnVtYmVyJzogcmV0dXJuICdudW1iZXInO1xuICAgIGNhc2UgJ2NoZWNrYm94JzogcmV0dXJuICdjaGVja2JveCc7XG4gICAgY2FzZSAnYnV0dG9uJzogcmV0dXJuICdidXR0b24nO1xuICAgIGNhc2UgJ2twaS1jYXJkJzogcmV0dXJuICdrcGknO1xuICAgIGNhc2UgJ2NoYXJ0JzogcmV0dXJuICdjaGFydC1iYXInO1xuICAgIGRlZmF1bHQ6IHJldHVybiAnYm94JztcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { ReportExportService, sanitizeCsvCell, generateCsvContent } from './services/report-export.service';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export { ReportExportService, sanitizeCsvCell, generateCsvContent, generateExcelXml, generateHtmlContent, formatFilterSummary, } from './services/report-export.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9id2F5cy1yZXBvcnQvc3JjL2xpYi9mZWF0dXJlcy9leHBvcnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsbUJBQW1CLEdBQ3BCLE1BQU0sa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSB7XG4gIEV4cG9ydENvbHVtbixcbiAgQ3N2RXhwb3J0T3B0aW9ucyxcbiAgRXhjZWxFeHBvcnRPcHRpb25zLFxuICBIdG1sRXhwb3J0T3B0aW9ucyxcbiAgSnNvbkV4cG9ydE9wdGlvbnMsXG4gIEJyYW5kZWRIZWFkZXJPcHRpb25zLFxufSBmcm9tICcuL21vZGVscy9leHBvcnQubW9kZWxzJztcbmV4cG9ydCB7XG4gIFJlcG9ydEV4cG9ydFNlcnZpY2UsXG4gIHNhbml0aXplQ3N2Q2VsbCxcbiAgZ2VuZXJhdGVDc3ZDb250ZW50LFxuICBnZW5lcmF0ZUV4Y2VsWG1sLFxuICBnZW5lcmF0ZUh0bWxDb250ZW50LFxuICBmb3JtYXRGaWx0ZXJTdW1tYXJ5LFxufSBmcm9tICcuL3NlcnZpY2VzL3JlcG9ydC1leHBvcnQuc2VydmljZSc7XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0Lm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J3YXlzLXJlcG9ydC9zcmMvbGliL2ZlYXR1cmVzL2V4cG9ydC9tb2RlbHMvZXhwb3J0Lm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBFeHBvcnRDb2x1bW4ge1xuICBmaWVsZDogc3RyaW5nO1xuICBoZWFkZXI6IHN0cmluZztcbiAgZm9ybWF0dGVyPzogKHZhbHVlOiBhbnksIHJvdz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0Lm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J3YXlzLXJlcG9ydC9zcmMvbGliL2ZlYXR1cmVzL2V4cG9ydC9tb2RlbHMvZXhwb3J0Lm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBFeHBvcnRDb2x1bW4ge1xuICBmaWVsZDogc3RyaW5nO1xuICBoZWFkZXI6IHN0cmluZztcbiAgZm9ybWF0dGVyPzogKHZhbHVlOiBhbnksIHJvdz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnJhbmRlZEhlYWRlck9wdGlvbnMge1xuICBjb21wYW55TmFtZT86IHN0cmluZztcbiAgYnJhbmNoTmFtZT86IHN0cmluZztcbiAgcmVwb3J0VGl0bGU/OiBzdHJpbmc7XG4gIGdlbmVyYXRlZEF0PzogRGF0ZSB8IHN0cmluZztcbiAgZ2VuZXJhdGVkQnk/OiBzdHJpbmc7XG4gIGFjdGl2ZUZpbHRlclN1bW1hcnk/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDc3ZFeHBvcnRPcHRpb25zIHtcbiAgZmlsZU5hbWU/OiBzdHJpbmc7XG4gIGNvbHVtbnM/OiBFeHBvcnRDb2x1bW5bXTtcbiAgaW5jbHVkZUhlYWRlcj86IGJvb2xlYW47XG4gIGRlbGltaXRlcj86IHN0cmluZztcbiAgYWRkQm9tPzogYm9vbGVhbjtcbiAgYnJhbmRlZEhlYWRlcj86IEJyYW5kZWRIZWFkZXJPcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4Y2VsRXhwb3J0T3B0aW9ucyB7XG4gIGZpbGVOYW1lPzogc3RyaW5nO1xuICBzaGVldE5hbWU/OiBzdHJpbmc7XG4gIGNvbHVtbnM/OiBFeHBvcnRDb2x1bW5bXTtcbiAgaW5jbHVkZUhlYWRlcj86IGJvb2xlYW47XG4gIGJyYW5kZWRIZWFkZXI/OiBCcmFuZGVkSGVhZGVyT3B0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIdG1sRXhwb3J0T3B0aW9ucyB7XG4gIGZpbGVOYW1lPzogc3RyaW5nO1xuICBjb2x1bW5zPzogRXhwb3J0Q29sdW1uW107XG4gIGJyYW5kZWRIZWFkZXI/OiBCcmFuZGVkSGVhZGVyT3B0aW9ucztcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIGF1dG9QcmludD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSnNvbkV4cG9ydE9wdGlvbnMge1xuICBmaWxlTmFtZT86IHN0cmluZztcbiAgcHJldHR5PzogYm9vbGVhbjtcbn1cbiJdfQ==
|