@datagrok-libraries/statistics 1.9.2 → 1.12.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.
Files changed (34) hide show
  1. package/css/styles.css +229 -0
  2. package/package.json +3 -2
  3. package/src/fit/const.d.ts +58 -0
  4. package/src/fit/const.d.ts.map +1 -0
  5. package/src/fit/const.js +63 -0
  6. package/src/fit/fit-data.d.ts.map +1 -1
  7. package/src/fit/fit-data.js +37 -5
  8. package/src/fit/new-fit-API.d.ts +6 -0
  9. package/src/fit/new-fit-API.d.ts.map +1 -1
  10. package/src/fit/new-fit-API.js +2 -8
  11. package/src/mpo/dialogs/desirability-mode-dialog.d.ts +14 -0
  12. package/src/mpo/dialogs/desirability-mode-dialog.d.ts.map +1 -0
  13. package/src/mpo/dialogs/desirability-mode-dialog.js +198 -0
  14. package/src/mpo/editors/desirability-editor-factory.d.ts +15 -0
  15. package/src/mpo/editors/desirability-editor-factory.d.ts.map +1 -0
  16. package/src/mpo/editors/desirability-editor-factory.js +11 -0
  17. package/src/mpo/editors/mpo-categorical-editor.d.ts +24 -0
  18. package/src/mpo/editors/mpo-categorical-editor.d.ts.map +1 -0
  19. package/src/mpo/editors/mpo-categorical-editor.js +113 -0
  20. package/src/mpo/editors/mpo-line-editor.d.ts +46 -0
  21. package/src/mpo/editors/mpo-line-editor.d.ts.map +1 -0
  22. package/src/mpo/editors/mpo-line-editor.js +583 -0
  23. package/src/mpo/mpo-profile-editor.d.ts +42 -6
  24. package/src/mpo/mpo-profile-editor.d.ts.map +1 -1
  25. package/src/mpo/mpo-profile-editor.js +368 -59
  26. package/src/mpo/mpo.d.ts +53 -3
  27. package/src/mpo/mpo.d.ts.map +1 -1
  28. package/src/mpo/mpo.js +92 -16
  29. package/src/mpo/utils.d.ts +6 -0
  30. package/src/mpo/utils.d.ts.map +1 -0
  31. package/src/mpo/utils.js +17 -0
  32. package/src/mpo/mpo-line-editor.d.ts +0 -10
  33. package/src/mpo/mpo-line-editor.d.ts.map +0 -1
  34. package/src/mpo/mpo-line-editor.js +0 -258
package/css/styles.css ADDED
@@ -0,0 +1,229 @@
1
+ .statistics-mpo-header {
2
+ margin-top: 10px;
3
+ padding-bottom: 5px;
4
+ border-bottom: 1px solid var(--grey-2);
5
+ gap: 10px;
6
+ }
7
+
8
+ .statistics-mpo-header > * {
9
+ font-weight: bold;
10
+ }
11
+
12
+ .statistics-mpo-header > *:first-child {
13
+ width: 130px;
14
+ }
15
+
16
+ .statistics-mpo-header > *:nth-child(2) {
17
+ width: 120px;
18
+ min-width: 60px;
19
+ }
20
+
21
+ .statistics-mpo-header > *:nth-child(3) {
22
+ flex-grow: 1;
23
+ }
24
+
25
+ .statistics-mpo-property-cell {
26
+ width: 130px;
27
+ max-width: 130px;
28
+ align-self: flex-end;
29
+ margin-bottom: 20px !important;
30
+ }
31
+
32
+ .ui-form .statistics-mpo-property-cell > div:first-child {
33
+ padding-left: 4px;
34
+ }
35
+
36
+ .statistics-mpo-property-cell > div:first-child {
37
+ overflow: hidden;
38
+ text-overflow: ellipsis;
39
+ white-space: nowrap;
40
+ }
41
+
42
+ .statistics-mpo-weight-input {
43
+ width: 100px;
44
+ }
45
+
46
+ .statistics-mpo-weight-cell {
47
+ align-self: flex-end;
48
+ margin-bottom: 20px !important;
49
+ align-items: center;
50
+ gap: 4px;
51
+ }
52
+
53
+ .statistics-mpo-control-buttons {
54
+ gap: 10px;
55
+ margin-left: 10px;
56
+ color: var(--blue-1);
57
+ visibility: hidden;
58
+ white-space: nowrap;
59
+ flex-shrink: 0;
60
+ }
61
+
62
+ .statistics-mpo-row:hover .statistics-mpo-control-buttons,
63
+ .statistics-mpo-cat-row:hover .statistics-mpo-control-buttons {
64
+ visibility: visible;
65
+ }
66
+
67
+ .statistics-mpo-range-input {
68
+ width: 70px;
69
+ }
70
+
71
+ .statistics-mpo-row {
72
+ display: flex;
73
+ align-items: center;
74
+ justify-content: flex-start;
75
+ padding: 8px 0;
76
+ min-height: 70px;
77
+ gap: 10px;
78
+
79
+ flex-wrap: wrap;
80
+ }
81
+
82
+ .statistics-mpo-row > * {
83
+ flex: 0 0 auto;
84
+ }
85
+
86
+
87
+ .statistics-mpo-row .ui-input-choice .ui-input-editor {
88
+ width: 100px !important;
89
+ max-width: none !important;
90
+ }
91
+
92
+ .ui-form .statistics-mpo-row .ui-input-root {
93
+ margin-bottom: 0 !important;
94
+ padding: 0 !important;
95
+ }
96
+
97
+ .statistics-mpo-cat-editor {
98
+ width: 280px;
99
+ margin-left: 30px;
100
+ }
101
+
102
+ .statistics-mpo-cat-row {
103
+ display: flex;
104
+ align-items: center;
105
+ gap: 4px;
106
+ margin-bottom: 2px;
107
+ }
108
+
109
+ .statistics-mpo-cat-name {
110
+ width: 120px;
111
+ }
112
+
113
+ .statistics-mpo-cat-col-header {
114
+ font-size: 11px;
115
+ color: var(--grey-3);
116
+ text-transform: uppercase;
117
+ letter-spacing: 0.3px;
118
+ }
119
+
120
+ .statistics-mpo-desirability-dialog .statistics-mpo-cat-editor {
121
+ width: auto;
122
+ margin-left: 0;
123
+ }
124
+
125
+ .statistics-mpo-desirability-dialog .statistics-mpo-cat-name {
126
+ flex: 1;
127
+ width: auto;
128
+ }
129
+
130
+ .statistics-mpo-cat-desirability {
131
+ width: 70px;
132
+ }
133
+
134
+ .statistics-mpo-weight-toggle {
135
+ cursor: pointer;
136
+ color: var(--grey-3);
137
+ font-size: 12px;
138
+ }
139
+
140
+ .statistics-mpo-weight-toggle:hover {
141
+ color: var(--grey-5);
142
+ }
143
+
144
+ .statistics-mpo-weight-toggle-active {
145
+ color: var(--blue-1);
146
+ }
147
+
148
+ .statistics-mpo-weight-toggle-active:hover {
149
+ color: var(--blue-2);
150
+ }
151
+
152
+ .statistics-mpo-hidden {
153
+ display: none !important;
154
+ }
155
+
156
+ .statistics-mpo-empty-state {
157
+ text-align: center;
158
+ padding: 48px 24px;
159
+ color: var(--grey-4);
160
+ border: 1px dashed var(--grey-2);
161
+ border-radius: 8px;
162
+ margin: 16px 12px;
163
+ }
164
+
165
+ .statistics-mpo-empty-state i {
166
+ font-size: 48px;
167
+ margin-bottom: 16px;
168
+ display: block;
169
+ color: var(--blue-1);
170
+ opacity: 0.3;
171
+ cursor: default;
172
+ pointer-events: none;
173
+ }
174
+
175
+ .statistics-mpo-empty-state h3 {
176
+ color: var(--grey-5);
177
+ }
178
+
179
+ .statistics-mpo-empty-state p {
180
+ color: var(--grey-3);
181
+ max-width: 360px;
182
+ margin-inline: auto;
183
+ }
184
+
185
+ .statistics-mpo-dialog-header-row {
186
+ gap: 12px;
187
+ align-items: flex-end;
188
+ margin-bottom: 8px;
189
+ }
190
+
191
+ .statistics-mpo-dialog-header-row .ui-input-root {
192
+ flex: 0 1 auto;
193
+ }
194
+
195
+ .statistics-mpo-section-header {
196
+ font-size: 11px;
197
+ text-transform: uppercase;
198
+ color: var(--blue-1);
199
+ letter-spacing: 0.5px;
200
+ border-bottom: 1px solid var(--grey-2);
201
+ padding-bottom: 4px;
202
+ margin: 12px 0 8px;
203
+ }
204
+
205
+ .statistics-mpo-param-grid.ui-form {
206
+ display: grid;
207
+ grid-template-columns: 1fr 1fr;
208
+ gap: 0 8px;
209
+ }
210
+
211
+ .statistics-mpo-desirability-dialog .statistics-mpo-plot {
212
+ margin: 0 auto;
213
+ }
214
+
215
+ @media (max-width: 500px) {
216
+ .statistics-mpo-row {
217
+ flex-direction: column;
218
+ align-items: flex-start;
219
+ }
220
+
221
+ .statistics-mpo-row > * {
222
+ width: 100% !important;
223
+ margin-bottom: 5px;
224
+ }
225
+
226
+ .statistics-mpo-weight-cell {
227
+ margin-top: 0 !important;
228
+ }
229
+ }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "friendlyName": "statistics",
7
- "version": "1.9.2",
7
+ "version": "1.12.0",
8
8
  "description": "Statistics utilities",
9
9
  "author": {
10
10
  "name": "Dmytro Kovalyov",
@@ -14,7 +14,7 @@
14
14
  "@datagrok-libraries/utils": "^4.5.7",
15
15
  "@types/seedrandom": "^3.0.8",
16
16
  "cash-dom": "^8.0.0",
17
- "datagrok-api": "^1.20.0",
17
+ "datagrok-api": "^1.27.0",
18
18
  "dayjs": "^1.11.7",
19
19
  "jstat": "^1.9.6",
20
20
  "konva": "^9.3.20",
@@ -28,6 +28,7 @@
28
28
  "eslint": "^8.57.1",
29
29
  "eslint-config-google": "^0.14.0",
30
30
  "ts-loader": "^9.2.6",
31
+ "css-loader": "^7.1.2",
31
32
  "typescript": "^4.2.3"
32
33
  },
33
34
  "scripts": {
@@ -0,0 +1,58 @@
1
+ import { IFitSeries } from './fit-curve';
2
+ export declare class FitConstants {
3
+ static TAG_FIT_CHART_FORMAT: string;
4
+ static TAG_FIT_CHART_FORMAT_3DX: string;
5
+ static FIT_SEM_TYPE: string;
6
+ static FIT_CELL_TYPE: string;
7
+ static TAG_FIT: string;
8
+ static CELL_DEFAULT_WIDTH: number;
9
+ static CELL_DEFAULT_HEIGHT: number;
10
+ static MIN_CELL_RENDERER_PX_WIDTH: number;
11
+ static MIN_CELL_RENDERER_PX_HEIGHT: number;
12
+ static MIN_POINTS_AND_STATS_VISIBILITY_PX_WIDTH: number;
13
+ static MIN_POINTS_AND_STATS_VISIBILITY_PX_HEIGHT: number;
14
+ static MIN_AXES_CELL_PX_WIDTH: number;
15
+ static MIN_AXES_CELL_PX_HEIGHT: number;
16
+ static MIN_TITLE_PX_WIDTH: number;
17
+ static MIN_TITLE_PX_HEIGHT: number;
18
+ static MIN_X_AXIS_NAME_VISIBILITY_PX_WIDTH: number;
19
+ static MIN_Y_AXIS_NAME_VISIBILITY_PX_HEIGHT: number;
20
+ static MIN_LEGEND_PX_WIDTH: number;
21
+ static MIN_LEGEND_PX_HEIGHT: number;
22
+ static MIN_DROPLINES_VISIBILITY_PX_WIDTH: number;
23
+ static MIN_DROPLINES_VISIBILITY_PX_HEIGHT: number;
24
+ static AXES_LEFT_PX_MARGIN: number;
25
+ static AXES_LEFT_PX_MARGIN_WITH_AXES_LABELS: number;
26
+ static AXES_TOP_PX_MARGIN: number;
27
+ static AXES_TOP_PX_MARGIN_WITH_TITLE: number;
28
+ static AXES_RIGHT_PX_MARGIN: number;
29
+ static AXES_BOTTOM_PX_MARGIN: number;
30
+ static AXES_BOTTOM_PX_MARGIN_WITH_AXES_LABELS: number;
31
+ static X_AXIS_LABEL_BOTTOM_PX_MARGIN: number;
32
+ static LEGEND_TOP_PX_MARGIN: number;
33
+ static OUTLIER_PX_SIZE: number;
34
+ static POINT_PX_SIZE: number;
35
+ static OUTLIER_HITBOX_RADIUS: number;
36
+ static CANDLESTICK_BORDER_PX_SIZE: number;
37
+ static CANDLESTICK_MEDIAN_PX_SIZE: number;
38
+ static CANDLESTICK_OUTLIER_PX_SIZE: number;
39
+ static INFLATE_SIZE: number;
40
+ static MIN_INFLATE_SIZE: number;
41
+ static LEGEND_RECORD_PX_HEIGHT: number;
42
+ static LEGEND_RECORD_LINE_PX_WIDTH: number;
43
+ static LEGEND_RECORD_LINE_RIGHT_PX_MARGIN: number;
44
+ static LEGEND_RECORD_LINE_BOTTOM_PX_MARGIN: number;
45
+ static LINE_STYLES: {
46
+ [key: string]: number[];
47
+ };
48
+ static CURVE_CONFIDENCE_INTERVAL_BOUNDS: {
49
+ TOP: string;
50
+ BOTTOM: string;
51
+ };
52
+ static CONFIDENCE_INTERVAL_STROKE_COLOR: string;
53
+ static CONFIDENCE_INTERVAL_FILL_COLOR: string;
54
+ static CONDITION_MAP: {
55
+ [key: string]: ((series?: IFitSeries[]) => boolean);
56
+ };
57
+ }
58
+ //# sourceMappingURL=const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAEvC,qBAAa,YAAY;IACvB,MAAM,CAAC,oBAAoB,SAAqB;IAChD,MAAM,CAAC,wBAAwB,SAAS;IACxC,MAAM,CAAC,YAAY,SAAS;IAC5B,MAAM,CAAC,aAAa,SAAS;IAC7B,MAAM,CAAC,OAAO,SAAU;IAExB,MAAM,CAAC,kBAAkB,SAAO;IAChC,MAAM,CAAC,mBAAmB,SAAO;IACjC,MAAM,CAAC,0BAA0B,SAAM;IACvC,MAAM,CAAC,2BAA2B,SAAK;IACvC,MAAM,CAAC,wCAAwC,SAAM;IACrD,MAAM,CAAC,yCAAyC,SAAM;IACtD,MAAM,CAAC,sBAAsB,SAAO;IACpC,MAAM,CAAC,uBAAuB,SAAM;IACpC,MAAM,CAAC,kBAAkB,SAAO;IAChC,MAAM,CAAC,mBAAmB,SAAO;IACjC,MAAM,CAAC,mCAAmC,SAAO;IACjD,MAAM,CAAC,oCAAoC,SAAO;IAClD,MAAM,CAAC,mBAAmB,SAAO;IACjC,MAAM,CAAC,oBAAoB,SAAO;IAClC,MAAM,CAAC,iCAAiC,SAAO;IAC/C,MAAM,CAAC,kCAAkC,SAAO;IAChD,MAAM,CAAC,mBAAmB,SAAM;IAChC,MAAM,CAAC,oCAAoC,SAAM;IACjD,MAAM,CAAC,kBAAkB,SAAK;IAC9B,MAAM,CAAC,6BAA6B,SAAM;IAC1C,MAAM,CAAC,oBAAoB,SAAM;IACjC,MAAM,CAAC,qBAAqB,SAAM;IAClC,MAAM,CAAC,sCAAsC,SAAM;IACnD,MAAM,CAAC,6BAA6B,SAAK;IACzC,MAAM,CAAC,oBAAoB,SAAM;IAEjC,MAAM,CAAC,eAAe,SAAM;IAC5B,MAAM,CAAC,aAAa,SAAK;IACzB,MAAM,CAAC,qBAAqB,SAAK;IACjC,MAAM,CAAC,0BAA0B,SAAK;IACtC,MAAM,CAAC,0BAA0B,SAAO;IACxC,MAAM,CAAC,2BAA2B,SAAK;IACvC,MAAM,CAAC,YAAY,SAAW;IAC9B,MAAM,CAAC,gBAAgB,SAAU;IACjC,MAAM,CAAC,uBAAuB,SAAM;IACpC,MAAM,CAAC,2BAA2B,SAAM;IACxC,MAAM,CAAC,kCAAkC,SAAK;IAC9C,MAAM,CAAC,mCAAmC,SAAK;IAE/C,MAAM,CAAC,WAAW,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAC,CAK3C;IAEF,MAAM,CAAC,gCAAgC;;;MAGrC;IAEF,MAAM,CAAC,gCAAgC,SAA0B;IACjE,MAAM,CAAC,8BAA8B,SAA2B;IAEhE,MAAM,CAAC,aAAa,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,OAAO,CAAC,CAAA;KAAC,CAQzE;CACH"}
@@ -0,0 +1,63 @@
1
+ export class FitConstants {
2
+ }
3
+ FitConstants.TAG_FIT_CHART_FORMAT = '.fitChartFormat';
4
+ FitConstants.TAG_FIT_CHART_FORMAT_3DX = '3dx';
5
+ FitConstants.FIT_SEM_TYPE = 'fit';
6
+ FitConstants.FIT_CELL_TYPE = 'fit';
7
+ FitConstants.TAG_FIT = '.fit';
8
+ FitConstants.CELL_DEFAULT_WIDTH = 230;
9
+ FitConstants.CELL_DEFAULT_HEIGHT = 160;
10
+ FitConstants.MIN_CELL_RENDERER_PX_WIDTH = 10;
11
+ FitConstants.MIN_CELL_RENDERER_PX_HEIGHT = 5;
12
+ FitConstants.MIN_POINTS_AND_STATS_VISIBILITY_PX_WIDTH = 70;
13
+ FitConstants.MIN_POINTS_AND_STATS_VISIBILITY_PX_HEIGHT = 45;
14
+ FitConstants.MIN_AXES_CELL_PX_WIDTH = 100;
15
+ FitConstants.MIN_AXES_CELL_PX_HEIGHT = 55;
16
+ FitConstants.MIN_TITLE_PX_WIDTH = 275;
17
+ FitConstants.MIN_TITLE_PX_HEIGHT = 225;
18
+ FitConstants.MIN_X_AXIS_NAME_VISIBILITY_PX_WIDTH = 180;
19
+ FitConstants.MIN_Y_AXIS_NAME_VISIBILITY_PX_HEIGHT = 140;
20
+ FitConstants.MIN_LEGEND_PX_WIDTH = 325;
21
+ FitConstants.MIN_LEGEND_PX_HEIGHT = 275;
22
+ FitConstants.MIN_DROPLINES_VISIBILITY_PX_WIDTH = 120;
23
+ FitConstants.MIN_DROPLINES_VISIBILITY_PX_HEIGHT = 110;
24
+ FitConstants.AXES_LEFT_PX_MARGIN = 38;
25
+ FitConstants.AXES_LEFT_PX_MARGIN_WITH_AXES_LABELS = 45;
26
+ FitConstants.AXES_TOP_PX_MARGIN = 5;
27
+ FitConstants.AXES_TOP_PX_MARGIN_WITH_TITLE = 25;
28
+ FitConstants.AXES_RIGHT_PX_MARGIN = 18;
29
+ FitConstants.AXES_BOTTOM_PX_MARGIN = 15;
30
+ FitConstants.AXES_BOTTOM_PX_MARGIN_WITH_AXES_LABELS = 30;
31
+ FitConstants.X_AXIS_LABEL_BOTTOM_PX_MARGIN = 4;
32
+ FitConstants.LEGEND_TOP_PX_MARGIN = 10;
33
+ FitConstants.OUTLIER_PX_SIZE = 12;
34
+ FitConstants.POINT_PX_SIZE = 4;
35
+ FitConstants.OUTLIER_HITBOX_RADIUS = 2;
36
+ FitConstants.CANDLESTICK_BORDER_PX_SIZE = 4;
37
+ FitConstants.CANDLESTICK_MEDIAN_PX_SIZE = 3.5;
38
+ FitConstants.CANDLESTICK_OUTLIER_PX_SIZE = 6;
39
+ FitConstants.INFLATE_SIZE = -12 / 2;
40
+ FitConstants.MIN_INFLATE_SIZE = -4 / 2;
41
+ FitConstants.LEGEND_RECORD_PX_HEIGHT = 18;
42
+ FitConstants.LEGEND_RECORD_LINE_PX_WIDTH = 20;
43
+ FitConstants.LEGEND_RECORD_LINE_RIGHT_PX_MARGIN = 5;
44
+ FitConstants.LEGEND_RECORD_LINE_BOTTOM_PX_MARGIN = 4;
45
+ FitConstants.LINE_STYLES = {
46
+ 'solid': [],
47
+ 'dotted': [1, 1],
48
+ 'dashed': [5, 5],
49
+ 'dashdotted': [5, 5, 2, 5],
50
+ };
51
+ FitConstants.CURVE_CONFIDENCE_INTERVAL_BOUNDS = {
52
+ TOP: 'top',
53
+ BOTTOM: 'bottom',
54
+ };
55
+ FitConstants.CONFIDENCE_INTERVAL_STROKE_COLOR = 'rgba(255,191,63,0.4)';
56
+ FitConstants.CONFIDENCE_INTERVAL_FILL_COLOR = 'rgba(255,238,204,0.3)';
57
+ FitConstants.CONDITION_MAP = {
58
+ 'No series to show': (series) => series === undefined || (series === null || series === void 0 ? void 0 : series.length) === 0,
59
+ 'There were series with no points': (series) => series.some((series) => { var _a; return ((_a = series.points) === null || _a === void 0 ? void 0 : _a.length) === 0; }),
60
+ 'There were series with all x zeroes': (series) => series.some((series) => { var _a; return (_a = series.points) === null || _a === void 0 ? void 0 : _a.every((point) => point.x === 0); }),
61
+ 'There were series with all y zeroes': (series) => series.some((series) => { var _a; return (_a = series.points) === null || _a === void 0 ? void 0 : _a.every((point) => point.y === 0); }),
62
+ };
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sWUFBWTs7QUFDaEIsaUNBQW9CLEdBQUcsaUJBQWlCLENBQUM7QUFDekMscUNBQXdCLEdBQUcsS0FBSyxDQUFDO0FBQ2pDLHlCQUFZLEdBQUcsS0FBSyxDQUFDO0FBQ3JCLDBCQUFhLEdBQUcsS0FBSyxDQUFDO0FBQ3RCLG9CQUFPLEdBQUcsTUFBTSxDQUFDO0FBRWpCLCtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQUN6QixnQ0FBbUIsR0FBRyxHQUFHLENBQUM7QUFDMUIsdUNBQTBCLEdBQUcsRUFBRSxDQUFDO0FBQ2hDLHdDQUEyQixHQUFHLENBQUMsQ0FBQztBQUNoQyxxREFBd0MsR0FBRyxFQUFFLENBQUM7QUFDOUMsc0RBQXlDLEdBQUcsRUFBRSxDQUFDO0FBQy9DLG1DQUFzQixHQUFHLEdBQUcsQ0FBQztBQUM3QixvQ0FBdUIsR0FBRyxFQUFFLENBQUM7QUFDN0IsK0JBQWtCLEdBQUcsR0FBRyxDQUFDO0FBQ3pCLGdDQUFtQixHQUFHLEdBQUcsQ0FBQztBQUMxQixnREFBbUMsR0FBRyxHQUFHLENBQUM7QUFDMUMsaURBQW9DLEdBQUcsR0FBRyxDQUFDO0FBQzNDLGdDQUFtQixHQUFHLEdBQUcsQ0FBQztBQUMxQixpQ0FBb0IsR0FBRyxHQUFHLENBQUM7QUFDM0IsOENBQWlDLEdBQUcsR0FBRyxDQUFDO0FBQ3hDLCtDQUFrQyxHQUFHLEdBQUcsQ0FBQztBQUN6QyxnQ0FBbUIsR0FBRyxFQUFFLENBQUM7QUFDekIsaURBQW9DLEdBQUcsRUFBRSxDQUFDO0FBQzFDLCtCQUFrQixHQUFHLENBQUMsQ0FBQztBQUN2QiwwQ0FBNkIsR0FBRyxFQUFFLENBQUM7QUFDbkMsaUNBQW9CLEdBQUcsRUFBRSxDQUFDO0FBQzFCLGtDQUFxQixHQUFHLEVBQUUsQ0FBQztBQUMzQixtREFBc0MsR0FBRyxFQUFFLENBQUM7QUFDNUMsMENBQTZCLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLGlDQUFvQixHQUFHLEVBQUUsQ0FBQztBQUUxQiw0QkFBZSxHQUFHLEVBQUUsQ0FBQztBQUNyQiwwQkFBYSxHQUFHLENBQUMsQ0FBQztBQUNsQixrQ0FBcUIsR0FBRyxDQUFDLENBQUM7QUFDMUIsdUNBQTBCLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLHVDQUEwQixHQUFHLEdBQUcsQ0FBQztBQUNqQyx3Q0FBMkIsR0FBRyxDQUFDLENBQUM7QUFDaEMseUJBQVksR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDdkIsNkJBQWdCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQzFCLG9DQUF1QixHQUFHLEVBQUUsQ0FBQztBQUM3Qix3Q0FBMkIsR0FBRyxFQUFFLENBQUM7QUFDakMsK0NBQWtDLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZDLGdEQUFtQyxHQUFHLENBQUMsQ0FBQztBQUV4Qyx3QkFBVyxHQUE4QjtJQUM5QyxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEIsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoQixZQUFZLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7Q0FDM0IsQ0FBQztBQUVLLDZDQUFnQyxHQUFHO0lBQ3hDLEdBQUcsRUFBRSxLQUFLO0lBQ1YsTUFBTSxFQUFFLFFBQVE7Q0FDakIsQ0FBQztBQUVLLDZDQUFnQyxHQUFHLHNCQUFzQixDQUFDO0FBQzFELDJDQUE4QixHQUFHLHVCQUF1QixDQUFDO0FBRXpELDBCQUFhLEdBQTBEO0lBQzVFLG1CQUFtQixFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEtBQUssU0FBUyxJQUFJLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE1BQU0sTUFBSyxDQUFDO0lBQzdFLGtDQUFrQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDekMsTUFBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLFdBQUMsT0FBQSxDQUFBLE1BQUEsTUFBTSxDQUFDLE1BQU0sMENBQUUsTUFBTSxNQUFLLENBQUMsQ0FBQSxFQUFBLENBQUM7SUFDM0QscUNBQXFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUM1QyxNQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsV0FBQyxPQUFBLE1BQUEsTUFBTSxDQUFDLE1BQU0sMENBQUUsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBLEVBQUEsQ0FBQztJQUM5RSxxQ0FBcUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQzVDLE1BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsTUFBTSwwQ0FBRSxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUEsRUFBQSxDQUFDO0NBQy9FLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lGaXRTZXJpZXN9IGZyb20gJy4vZml0LWN1cnZlJztcblxuZXhwb3J0IGNsYXNzIEZpdENvbnN0YW50cyB7XG4gIHN0YXRpYyBUQUdfRklUX0NIQVJUX0ZPUk1BVCA9ICcuZml0Q2hhcnRGb3JtYXQnO1xuICBzdGF0aWMgVEFHX0ZJVF9DSEFSVF9GT1JNQVRfM0RYID0gJzNkeCc7XG4gIHN0YXRpYyBGSVRfU0VNX1RZUEUgPSAnZml0JztcbiAgc3RhdGljIEZJVF9DRUxMX1RZUEUgPSAnZml0JztcbiAgc3RhdGljIFRBR19GSVQgPSAnLmZpdCc7XG5cbiAgc3RhdGljIENFTExfREVGQVVMVF9XSURUSCA9IDIzMDtcbiAgc3RhdGljIENFTExfREVGQVVMVF9IRUlHSFQgPSAxNjA7XG4gIHN0YXRpYyBNSU5fQ0VMTF9SRU5ERVJFUl9QWF9XSURUSCA9IDEwO1xuICBzdGF0aWMgTUlOX0NFTExfUkVOREVSRVJfUFhfSEVJR0hUID0gNTtcbiAgc3RhdGljIE1JTl9QT0lOVFNfQU5EX1NUQVRTX1ZJU0lCSUxJVFlfUFhfV0lEVEggPSA3MDtcbiAgc3RhdGljIE1JTl9QT0lOVFNfQU5EX1NUQVRTX1ZJU0lCSUxJVFlfUFhfSEVJR0hUID0gNDU7XG4gIHN0YXRpYyBNSU5fQVhFU19DRUxMX1BYX1dJRFRIID0gMTAwO1xuICBzdGF0aWMgTUlOX0FYRVNfQ0VMTF9QWF9IRUlHSFQgPSA1NTtcbiAgc3RhdGljIE1JTl9USVRMRV9QWF9XSURUSCA9IDI3NTtcbiAgc3RhdGljIE1JTl9USVRMRV9QWF9IRUlHSFQgPSAyMjU7XG4gIHN0YXRpYyBNSU5fWF9BWElTX05BTUVfVklTSUJJTElUWV9QWF9XSURUSCA9IDE4MDtcbiAgc3RhdGljIE1JTl9ZX0FYSVNfTkFNRV9WSVNJQklMSVRZX1BYX0hFSUdIVCA9IDE0MDtcbiAgc3RhdGljIE1JTl9MRUdFTkRfUFhfV0lEVEggPSAzMjU7XG4gIHN0YXRpYyBNSU5fTEVHRU5EX1BYX0hFSUdIVCA9IDI3NTtcbiAgc3RhdGljIE1JTl9EUk9QTElORVNfVklTSUJJTElUWV9QWF9XSURUSCA9IDEyMDtcbiAgc3RhdGljIE1JTl9EUk9QTElORVNfVklTSUJJTElUWV9QWF9IRUlHSFQgPSAxMTA7XG4gIHN0YXRpYyBBWEVTX0xFRlRfUFhfTUFSR0lOID0gMzg7XG4gIHN0YXRpYyBBWEVTX0xFRlRfUFhfTUFSR0lOX1dJVEhfQVhFU19MQUJFTFMgPSA0NTtcbiAgc3RhdGljIEFYRVNfVE9QX1BYX01BUkdJTiA9IDU7XG4gIHN0YXRpYyBBWEVTX1RPUF9QWF9NQVJHSU5fV0lUSF9USVRMRSA9IDI1O1xuICBzdGF0aWMgQVhFU19SSUdIVF9QWF9NQVJHSU4gPSAxODtcbiAgc3RhdGljIEFYRVNfQk9UVE9NX1BYX01BUkdJTiA9IDE1O1xuICBzdGF0aWMgQVhFU19CT1RUT01fUFhfTUFSR0lOX1dJVEhfQVhFU19MQUJFTFMgPSAzMDtcbiAgc3RhdGljIFhfQVhJU19MQUJFTF9CT1RUT01fUFhfTUFSR0lOID0gNDtcbiAgc3RhdGljIExFR0VORF9UT1BfUFhfTUFSR0lOID0gMTA7XG5cbiAgc3RhdGljIE9VVExJRVJfUFhfU0laRSA9IDEyO1xuICBzdGF0aWMgUE9JTlRfUFhfU0laRSA9IDQ7XG4gIHN0YXRpYyBPVVRMSUVSX0hJVEJPWF9SQURJVVMgPSAyO1xuICBzdGF0aWMgQ0FORExFU1RJQ0tfQk9SREVSX1BYX1NJWkUgPSA0O1xuICBzdGF0aWMgQ0FORExFU1RJQ0tfTUVESUFOX1BYX1NJWkUgPSAzLjU7XG4gIHN0YXRpYyBDQU5ETEVTVElDS19PVVRMSUVSX1BYX1NJWkUgPSA2O1xuICBzdGF0aWMgSU5GTEFURV9TSVpFID0gLTEyIC8gMjtcbiAgc3RhdGljIE1JTl9JTkZMQVRFX1NJWkUgPSAtNCAvIDI7XG4gIHN0YXRpYyBMRUdFTkRfUkVDT1JEX1BYX0hFSUdIVCA9IDE4O1xuICBzdGF0aWMgTEVHRU5EX1JFQ09SRF9MSU5FX1BYX1dJRFRIID0gMjA7XG4gIHN0YXRpYyBMRUdFTkRfUkVDT1JEX0xJTkVfUklHSFRfUFhfTUFSR0lOID0gNTtcbiAgc3RhdGljIExFR0VORF9SRUNPUkRfTElORV9CT1RUT01fUFhfTUFSR0lOID0gNDtcblxuICBzdGF0aWMgTElORV9TVFlMRVM6IHtba2V5OiBzdHJpbmddOiBudW1iZXJbXX0gPSB7XG4gICAgJ3NvbGlkJzogW10sXG4gICAgJ2RvdHRlZCc6IFsxLCAxXSxcbiAgICAnZGFzaGVkJzogWzUsIDVdLFxuICAgICdkYXNoZG90dGVkJzogWzUsIDUsIDIsIDVdLFxuICB9O1xuXG4gIHN0YXRpYyBDVVJWRV9DT05GSURFTkNFX0lOVEVSVkFMX0JPVU5EUyA9IHtcbiAgICBUT1A6ICd0b3AnLFxuICAgIEJPVFRPTTogJ2JvdHRvbScsXG4gIH07XG5cbiAgc3RhdGljIENPTkZJREVOQ0VfSU5URVJWQUxfU1RST0tFX0NPTE9SID0gJ3JnYmEoMjU1LDE5MSw2MywwLjQpJztcbiAgc3RhdGljIENPTkZJREVOQ0VfSU5URVJWQUxfRklMTF9DT0xPUiA9ICdyZ2JhKDI1NSwyMzgsMjA0LDAuMyknO1xuXG4gIHN0YXRpYyBDT05ESVRJT05fTUFQOiB7W2tleTogc3RyaW5nXTogKChzZXJpZXM/OiBJRml0U2VyaWVzW10pID0+IGJvb2xlYW4pfSA9IHtcbiAgICAnTm8gc2VyaWVzIHRvIHNob3cnOiAoc2VyaWVzKSA9PiBzZXJpZXMgPT09IHVuZGVmaW5lZCB8fCBzZXJpZXM/Lmxlbmd0aCA9PT0gMCxcbiAgICAnVGhlcmUgd2VyZSBzZXJpZXMgd2l0aCBubyBwb2ludHMnOiAoc2VyaWVzKSA9PlxuICAgICAgICAgIHNlcmllcyEuc29tZSgoc2VyaWVzKSA9PiBzZXJpZXMucG9pbnRzPy5sZW5ndGggPT09IDApLFxuICAgICdUaGVyZSB3ZXJlIHNlcmllcyB3aXRoIGFsbCB4IHplcm9lcyc6IChzZXJpZXMpID0+XG4gICAgICAgICAgc2VyaWVzIS5zb21lKChzZXJpZXMpID0+IHNlcmllcy5wb2ludHM/LmV2ZXJ5KChwb2ludCkgPT4gcG9pbnQueCA9PT0gMCkpLFxuICAgICdUaGVyZSB3ZXJlIHNlcmllcyB3aXRoIGFsbCB5IHplcm9lcyc6IChzZXJpZXMpID0+XG4gICAgICAgICAgc2VyaWVzIS5zb21lKChzZXJpZXMpID0+IHNlcmllcy5wb2ludHM/LmV2ZXJ5KChwb2ludCkgPT4gcG9pbnQueSA9PT0gMCkpLFxuICB9O1xufVxuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"fit-data.d.ts","sourceRoot":"","sources":["fit-data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAIL,aAAa,EACb,sBAAsB,EACtB,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,EAKX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAU,WAAW,EAC0B,MAAM,eAAe,CAAC;AAE5E,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B,CAAC;AAcF,mDAAmD;AACnD,wBAAgB,sBAAsB,IAAI,aAAa,CAKtD;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG;IAAC,EAAE,EAAE,MAAM,EAAE,CAAC;IAAC,EAAE,EAAE,MAAM,EAAE,CAAA;CAAC,CAQjF;AAwED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,SAAS,EAAE,aAAa,GAAG,EAAE,CAAC,IAAI,CAehE;AAED,kCAAkC;AAClC,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,CAEpE;AAED,kGAAkG;AAClG,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAIxF;AAED,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,OAAO,GACjG;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,CAI3B;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EACzG,UAAU,CAAC,EAAE,UAAU,GAAG,QAAQ,CAMnC;AAED,mDAAmD;AACnD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAC3G,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,sBAAsB,CAU1F;AAED,gCAAgC;AAChC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EACnH,UAAU,CAAC,EAAE,UAAU,GAAG,aAAa,CASxC"}
1
+ {"version":3,"file":"fit-data.d.ts","sourceRoot":"","sources":["fit-data.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAIL,aAAa,EACb,sBAAsB,EACtB,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,EAKX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAU,WAAW,EAC0B,MAAM,eAAe,CAAC;AAE5E,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B,CAAC;AAcF,mDAAmD;AACnD,wBAAgB,sBAAsB,IAAI,aAAa,CAKtD;AAED,yDAAyD;AACzD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG;IAAC,EAAE,EAAE,MAAM,EAAE,CAAC;IAAC,EAAE,EAAE,MAAM,EAAE,CAAA;CAAC,CAQjF;AA2GD,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,SAAS,EAAE,aAAa,GAAG,EAAE,CAAC,IAAI,CAehE;AAED,kCAAkC;AAClC,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,CAEpE;AAED,kGAAkG;AAClG,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAIxF;AAED,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,OAAO,GACjG;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,CAI3B;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EACzG,UAAU,CAAC,EAAE,UAAU,GAAG,QAAQ,CAMnC;AAED,mDAAmD;AACnD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAC3G,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,sBAAsB,CAU1F;AAED,gCAAgC;AAChC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE;IAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,CAAC,EAAE,MAAM,EAAE,CAAA;CAAC,EACnH,UAAU,CAAC,EAAE,UAAU,GAAG,aAAa,CASxC"}
@@ -74,23 +74,55 @@ function changeBounds(bounds, chartOptions) {
74
74
  let y = bounds.y;
75
75
  let width = bounds.width;
76
76
  let height = bounds.height;
77
+ let boundsAdjusted = false;
77
78
  if (chartOptions.minX != null && chartOptions.minX <= bounds.maxX &&
78
79
  ((!chartOptions.logX) || (chartOptions.logX && chartOptions.minX > 0))) {
79
80
  width += x - chartOptions.minX;
80
81
  x = chartOptions.minX;
82
+ boundsAdjusted = true;
81
83
  }
82
84
  if (chartOptions.maxX != null && chartOptions.maxX >= bounds.minX &&
83
- ((!chartOptions.logX) || (chartOptions.logX && chartOptions.maxX > 0)))
85
+ ((!chartOptions.logX) || (chartOptions.logX && chartOptions.maxX > 0))) {
84
86
  width += chartOptions.maxX - (x + width);
87
+ boundsAdjusted = true;
88
+ }
85
89
  if (chartOptions.minY != null && chartOptions.minY <= bounds.maxY &&
86
90
  ((!chartOptions.logY) || (chartOptions.logY && chartOptions.minY > 0))) {
87
91
  height += y - chartOptions.minY;
88
92
  y = chartOptions.minY;
93
+ boundsAdjusted = true;
89
94
  }
90
95
  if (chartOptions.maxY != null && chartOptions.maxY >= bounds.minY &&
91
- ((!chartOptions.logY) || (chartOptions.logY && chartOptions.maxY > 0)))
96
+ ((!chartOptions.logY) || (chartOptions.logY && chartOptions.maxY > 0))) {
92
97
  height += chartOptions.maxY - (y + height);
93
- return new DG.Rect(x, y, width, height);
98
+ boundsAdjusted = true;
99
+ }
100
+ return boundsAdjusted ? new DG.Rect(x, y, width, height) : padBounds(bounds, chartOptions);
101
+ }
102
+ function padBounds(bounds, chartOptions, ratio = 0.05) {
103
+ let left = bounds.left;
104
+ let right = bounds.right;
105
+ let top = bounds.top;
106
+ let bottom = bounds.bottom;
107
+ if (chartOptions.logX) {
108
+ left = left > 0 ? left / (1 + ratio) : left;
109
+ right = right * (1 + ratio);
110
+ }
111
+ else {
112
+ const dx = bounds.width * ratio;
113
+ left -= dx;
114
+ right += dx;
115
+ }
116
+ if (chartOptions.logY) {
117
+ top = top > 0 ? top / (1 + ratio) : top;
118
+ bottom = bottom * (1 + ratio);
119
+ }
120
+ else {
121
+ const dy = bounds.height * ratio;
122
+ top -= dy;
123
+ bottom += dy;
124
+ }
125
+ return new DG.Rect(left, top, right - left, bottom - top);
94
126
  }
95
127
  /** Returns the bounds of an {@link IFitChartData} object */
96
128
  export function getChartBounds(chartData) {
@@ -107,7 +139,7 @@ export function getChartBounds(chartData) {
107
139
  continue;
108
140
  bounds = bounds.union(DG.Rect.fromXYArrays(xs, ys));
109
141
  }
110
- return o ? changeBounds(bounds, o) : bounds;
142
+ return o ? changeBounds(bounds, o) : padBounds(bounds, o);
111
143
  }
112
144
  }
113
145
  /** Returns series fit function */
@@ -159,4 +191,4 @@ export function getSeriesStatistics(series, fitFunc, dataPoints, logOptions) {
159
191
  params.set(series.parameters);
160
192
  return getStatistics(dataPoints, params, fitFunc.y, true);
161
193
  }
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmaXQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQ0FBZ0M7QUFDaEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV0QyxPQUFPLEVBQ0wsYUFBYSxFQUNiLGFBQWEsRUFDYixjQUFjLEVBT2Qsc0JBQXNCLEdBSXZCLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBQyxPQUFPLEVBQWUsbUJBQW1CLEVBQy9DLDJCQUEyQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBUTVFLGlGQUFpRjtBQUNqRixTQUFTLG9CQUFvQixDQUFDLFVBQXlCO0lBQ3JELE1BQU0sQ0FBQyxHQUFRLEVBQUUsQ0FBQztJQUNsQixLQUFLLE1BQU0sQ0FBQyxJQUFJLFVBQVUsRUFBRTtRQUMxQixJQUFJLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSTtZQUN6QixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7S0FDOUI7SUFDRCxPQUFPLENBQUMsQ0FBQztBQUNYLENBQUM7QUFFRCxxSEFBcUg7QUFDckgsbURBQW1EO0FBQ25ELE1BQU0sVUFBVSxzQkFBc0I7SUFDcEMsT0FBTztRQUNMLFlBQVksRUFBRSxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQztRQUMxRCxhQUFhLEVBQUUsb0JBQW9CLENBQUMsbUJBQW1CLENBQUM7S0FDekQsQ0FBQztBQUNKLENBQUM7QUFFRCx5REFBeUQ7QUFDekQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFtQjtJQUNqRCxNQUFNLEVBQUUsR0FBYSxFQUFFLENBQUM7SUFDeEIsTUFBTSxFQUFFLEdBQWEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ3RDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3JCO0lBQ0QsT0FBTyxFQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBQyxDQUFDO0FBQzFCLENBQUM7QUFFRCxpREFBaUQ7QUFDakQsU0FBUyxTQUFTLENBQUMsTUFBa0M7SUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuSCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQseUVBQXlFO0FBQ3pFLFNBQVMsZUFBZSxDQUFDLElBQWdDO0lBQ3ZELE1BQU0sWUFBWSxHQUErQixFQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBQyxDQUFDO0lBQ2hFLE1BQU0sYUFBYSxHQUErQixFQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztJQUNuRixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDdEMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDcEMsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEQsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEQsU0FBUztTQUNWO1FBQ0QsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNELFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDL0MsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QixhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQy9CO0lBQ0QsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNELFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUM7SUFFL0MsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQztBQUVELGlEQUFpRDtBQUNqRCxTQUFTLHNCQUFzQixDQUFDLFVBQTBCO0lBQ3hELElBQUksVUFBVSxFQUFFO1FBQ2QsSUFBSSxVQUFVLENBQUMsR0FBRyxLQUFLLFNBQVM7WUFDOUIsVUFBVSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QyxJQUFJLFVBQVUsQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFFO1lBQ2hDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDckMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsRDtLQUNGO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLE1BQWUsRUFBRSxZQUE4QjtJQUNuRSxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUN6QixJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBRTNCLElBQUksWUFBWSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSTtRQUMvRCxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUN4RSxLQUFLLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDL0IsQ0FBQyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7S0FDdkI7SUFDRCxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUk7UUFDL0QsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLEtBQUssSUFBSSxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQzNDLElBQUksWUFBWSxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSTtRQUMvRCxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUN4RSxNQUFNLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDaEMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7S0FDdkI7SUFDRCxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUk7UUFDL0QsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sSUFBSSxZQUFZLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBRTdDLE9BQU8sSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1B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RUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM1RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgdmFsaWQtanNkb2MgKi9cbmltcG9ydCAqIGFzIERHIGZyb20gJ2RhdGFncm9rLWFwaS9kZyc7XG5cbmltcG9ydCB7XG4gIEZpdEVycm9yTW9kZWwsXG4gIGdldFN0YXRpc3RpY3MsXG4gIGdldEZpdHRlZEN1cnZlLFxuICBGaXRTdGF0aXN0aWNzLFxuICBGaXRDb25maWRlbmNlSW50ZXJ2YWxzLFxuICBGaXRDdXJ2ZSxcbiAgSUZpdFBvaW50LFxuICBJRml0Q2hhcnREYXRhLFxuICBJRml0U2VyaWVzLFxuICBmaXRDaGFydERhdGFQcm9wZXJ0aWVzLFxuICBGaXRQYXJhbUJvdW5kcyxcbiAgSUZpdENoYXJ0T3B0aW9ucyxcbiAgRml0RXJyb3JNb2RlbFR5cGUsXG59IGZyb20gJy4vZml0LWN1cnZlJztcbmltcG9ydCB7Zml0RGF0YSwgRml0RnVuY3Rpb24sIGZpdFNlcmllc1Byb3BlcnRpZXMsXG4gIGdldEN1cnZlQ29uZmlkZW5jZUludGVydmFscywgZ2V0T3JDcmVhdGVGaXRGdW5jdGlvbn0gZnJvbSAnLi9uZXctZml0LUFQSSc7XG5cbmV4cG9ydCB0eXBlIExvZ09wdGlvbnMgPSB7XG4gIGxvZ1g6IGJvb2xlYW4gfCB1bmRlZmluZWQsXG4gIGxvZ1k6IGJvb2xlYW4gfCB1bmRlZmluZWRcbn07XG5cblxuLyoqIENyZWF0ZXMgbmV3IG9iamVjdCB3aXRoIHRoZSBkZWZhdWx0IHZhbHVlcyBzcGVjaWZpZWQgaW4ge0BsaW5rIHByb3BlcnRpZXN9ICovXG5mdW5jdGlvbiBjcmVhdGVGcm9tUHJvcGVydGllcyhwcm9wZXJ0aWVzOiBERy5Qcm9wZXJ0eVtdKTogYW55IHtcbiAgY29uc3QgbzogYW55ID0ge307XG4gIGZvciAoY29uc3QgcCBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgaWYgKHAuZGVmYXVsdFZhbHVlICE9PSBudWxsKVxuICAgICAgb1twLm5hbWVdID0gcC5kZWZhdWx0VmFsdWU7XG4gIH1cbiAgcmV0dXJuIG87XG59XG5cbi8vIFRPRE86IHNldCBjb2x1bW4gd2l0aCBmaXQgcmVhZG9ubHkgdmFsdWUgKGluIGRldGVjdG9ycykgLSB0cnkgdG8gb25seSBzaG93IGNoYXJ0IC0gcmVtb3ZlIGVkaXRhYmxlIG9yIHByZXZlbnQgaXQ/P1xuLyoqIENyZWF0ZXMgZGVmYXVsdCB7QGxpbmsgSUZpdENoYXJ0RGF0YX0gb2JqZWN0ICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVmYXVsdENoYXJ0RGF0YSgpOiBJRml0Q2hhcnREYXRhIHtcbiAgcmV0dXJuIHtcbiAgICBjaGFydE9wdGlvbnM6IGNyZWF0ZUZyb21Qcm9wZXJ0aWVzKGZpdENoYXJ0RGF0YVByb3BlcnRpZXMpLFxuICAgIHNlcmllc09wdGlvbnM6IGNyZWF0ZUZyb21Qcm9wZXJ0aWVzKGZpdFNlcmllc1Byb3BlcnRpZXMpLFxuICB9O1xufVxuXG4vKiogUmV0dXJucyBwb2ludHMgYXJyYXlzIGZyb20ge0BsaW5rIElGaXRQb2ludH0gYXJyYXkgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQb2ludHNBcnJheXMocG9pbnRzOiBJRml0UG9pbnRbXSk6IHt4czogbnVtYmVyW10sIHlzOiBudW1iZXJbXX0ge1xuICBjb25zdCB4czogbnVtYmVyW10gPSBbXTtcbiAgY29uc3QgeXM6IG51bWJlcltdID0gW107XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgcG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgeHNbaV0gPSBwb2ludHNbaV0ueDtcbiAgICB5c1tpXSA9IHBvaW50c1tpXS55O1xuICB9XG4gIHJldHVybiB7eHM6IHhzLCB5czogeXN9O1xufVxuXG4vKiogUmV0dXJucyBtZWRpYW4gZnJvbSB3aXRoaW4gbXVsdGlwbGUgcG9pbnRzICovXG5mdW5jdGlvbiBnZXRNZWRpYW4ocG9pbnRzOiB7eDogbnVtYmVyW10sIHk6IG51bWJlcltdfSk6IG51bWJlciB7XG4gIGNvbnN0IG1pZCA9IE1hdGguZmxvb3IocG9pbnRzLnkubGVuZ3RoIC8gMik7XG4gIGNvbnN0IHNvcnRlZFBvaW50cyA9IHBvaW50cy55LnNvcnQoKGEsIGIpID0+IGEgLSBiKTtcbiAgY29uc3QgbWVkaWFuID0gc29ydGVkUG9pbnRzLmxlbmd0aCAlIDIgPT09IDAgPyAoc29ydGVkUG9pbnRzW21pZCAtIDFdICsgc29ydGVkUG9pbnRzW21pZF0pIC8gMiA6IHNvcnRlZFBvaW50c1ttaWRdO1xuICByZXR1cm4gbWVkaWFuO1xufVxuXG4vKiogUmV0dXJucyBtZWRpYW4gcG9pbnRzIGZyb20gd2l0aGluIG11bHRpcGxlIHBvaW50cyB3aXRoIHRoZSBzYW1lIHguICovXG5mdW5jdGlvbiBnZXRNZWRpYW5Qb2ludHMoZGF0YToge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0pOiB7eDogbnVtYmVyW10sIHk6IG51bWJlcltdfSB7XG4gIGNvbnN0IG1lZGlhblBvaW50czoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0gPSB7eDogW10sIHk6IFtdfTtcbiAgY29uc3QgY3VycmVudFBvaW50czoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0gPSB7eDogW2RhdGEueFswXV0sIHk6IFtkYXRhLnlbMF1dfTtcbiAgZm9yIChsZXQgaSA9IDE7IGkgPCBkYXRhLngubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoZGF0YS54W2ldID09PSBjdXJyZW50UG9pbnRzLnhbMF0pIHtcbiAgICAgIGN1cnJlbnRQb2ludHMueFtjdXJyZW50UG9pbnRzLngubGVuZ3RoXSA9IGRhdGEueFtpXTtcbiAgICAgIGN1cnJlbnRQb2ludHMueVtjdXJyZW50UG9pbnRzLnkubGVuZ3RoXSA9IGRhdGEueVtpXTtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBjb25zdCBtZWRpYW4gPSBnZXRNZWRpYW4oY3VycmVudFBvaW50cyk7XG4gICAgbWVkaWFuUG9pbnRzLnhbbWVkaWFuUG9pbnRzLngubGVuZ3RoXSA9IGN1cnJlbnRQb2ludHMueFswXTtcbiAgICBtZWRpYW5Qb2ludHMueVttZWRpYW5Qb2ludHMueS5sZW5ndGhdID0gbWVkaWFuO1xuICAgIGN1cnJlbnRQb2ludHMueCA9IFtkYXRhLnhbaV1dO1xuICAgIGN1cnJlbnRQb2ludHMueSA9IFtkYXRhLnlbaV1dO1xuICB9XG4gIGNvbnN0IG1lZGlhbiA9IGdldE1lZGlhbihjdXJyZW50UG9pbnRzKTtcbiAgbWVkaWFuUG9pbnRzLnhbbWVkaWFuUG9pbnRzLngubGVuZ3RoXSA9IGN1cnJlbnRQb2ludHMueFswXTtcbiAgbWVkaWFuUG9pbnRzLnlbbWVkaWFuUG9pbnRzLnkubGVuZ3RoXSA9IG1lZGlhbjtcblxuICByZXR1cm4gbWVkaWFuUG9pbnRzO1xufVxuXG4vKiogUmV0dXJucyBsb2dhcml0aG1pYyBJQzUwIHBhcmFtZXRlciBib3VuZHMuICovXG5mdW5jdGlvbiBsb2dJQzUwUGFyYW1ldGVyQm91bmRzKGljNTBCb3VuZHM6IEZpdFBhcmFtQm91bmRzKTogRml0UGFyYW1Cb3VuZHMge1xuICBpZiAoaWM1MEJvdW5kcykge1xuICAgIGlmIChpYzUwQm91bmRzLm1heCAhPT0gdW5kZWZpbmVkKVxuICAgICAgaWM1MEJvdW5kcy5tYXggPSBNYXRoLmxvZzEwKGljNTBCb3VuZHMubWF4KTtcbiAgICBpZiAoaWM1MEJvdW5kcy5taW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWM1MEJvdW5kcy5taW4gPSBpYzUwQm91bmRzLm1pbiA9PT0gMCA/XG4gICAgICAgIC1OdW1iZXIuTUFYX1ZBTFVFIDogTWF0aC5sb2cxMChpYzUwQm91bmRzLm1pbik7XG4gICAgfVxuICB9XG4gIHJldHVybiBpYzUwQm91bmRzO1xufVxuXG5mdW5jdGlvbiBjaGFuZ2VCb3VuZHMoYm91bmRzOiBERy5SZWN0LCBjaGFydE9wdGlvbnM6IElGaXRDaGFydE9wdGlvbnMpOiBERy5SZWN0IHtcbiAgbGV0IHggPSBib3VuZHMueDtcbiAgbGV0IHkgPSBib3VuZHMueTtcbiAgbGV0IHdpZHRoID0gYm91bmRzLndpZHRoO1xuICBsZXQgaGVpZ2h0ID0gYm91bmRzLmhlaWdodDtcblxuICBpZiAoY2hhcnRPcHRpb25zLm1pblggIT0gbnVsbCAmJiBjaGFydE9wdGlvbnMubWluWCA8PSBib3VuZHMubWF4WCAmJlxuICAgICgoIWNoYXJ0T3B0aW9ucy5sb2dYKSB8fCAoY2hhcnRPcHRpb25zLmxvZ1ggJiYgY2hhcnRPcHRpb25zLm1pblggPiAwKSkpIHtcbiAgICB3aWR0aCArPSB4IC0gY2hhcnRPcHRpb25zLm1pblg7XG4gICAgeCA9IGNoYXJ0T3B0aW9ucy5taW5YO1xuICB9XG4gIGlmIChjaGFydE9wdGlvbnMubWF4WCAhPSBudWxsICYmIGNoYXJ0T3B0aW9ucy5tYXhYID49IGJvdW5kcy5taW5YICYmXG4gICAgKCghY2hhcnRPcHRpb25zLmxvZ1gpIHx8IChjaGFydE9wdGlvbnMubG9nWCAmJiBjaGFydE9wdGlvbnMubWF4WCA+IDApKSlcbiAgICB3aWR0aCArPSBjaGFydE9wdGlvbnMubWF4WCAtICh4ICsgd2lkdGgpO1xuICBpZiAoY2hhcnRPcHRpb25zLm1pblkgIT0gbnVsbCAmJiBjaGFydE9wdGlvbnMubWluWSA8PSBib3VuZHMubWF4WSAmJlxuICAgICgoIWNoYXJ0T3B0aW9ucy5sb2dZKSB8fCAoY2hhcnRPcHRpb25zLmxvZ1kgJiYgY2hhcnRPcHRpb25zLm1pblkgPiAwKSkpIHtcbiAgICBoZWlnaHQgKz0geSAtIGNoYXJ0T3B0aW9ucy5taW5ZO1xuICAgIHkgPSBjaGFydE9wdGlvbnMubWluWTtcbiAgfVxuICBpZiAoY2hhcnRPcHRpb25zLm1heFkgIT0gbnVsbCAmJiBjaGFydE9wdGlvbnMubWF4WSA+PSBib3VuZHMubWluWSAmJlxuICAgICgoIWNoYXJ0T3B0aW9ucy5sb2dZKSB8fCAoY2hhcnRPcHRpb25zLmxvZ1kgJiYgY2hhcnRPcHRpb25zLm1heFkgPiAwKSkpXG4gICAgaGVpZ2h0ICs9IGNoYXJ0T3B0aW9ucy5tYXhZIC0gKHkgKyBoZWlnaHQpO1xuXG4gIHJldHVybiBuZXcgREcuUmVjdCh4LCB5LCB3aWR0aCwgaGVpZ2h0KTtcbn1cblxuLyoqIFJldHVybnMgdGhlIGJvdW5kcyBvZiBhbiB7QGxpbmsgSUZpdENoYXJ0RGF0YX0gb2JqZWN0ICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2hhcnRCb3VuZHMoY2hhcnREYXRhOiBJRml0Q2hhcnREYXRhKTogREcuUmVjdCB7XG4gIGNvbnN0IG8gPSBjaGFydERhdGEuY2hhcnRPcHRpb25zO1xuICBpZiAoIWNoYXJ0RGF0YS5zZXJpZXM/Lmxlbmd0aCB8fCBjaGFydERhdGEuc2VyaWVzLmxlbmd0aCA9PT0gMClcbiAgICByZXR1cm4gbmV3IERHLlJlY3QoMCwgMCwgMSwgMSk7XG4gIGVsc2Uge1xuICAgIGNvbnN0IHt4cywgeXN9ID0gZ2V0UG9pbnRzQXJyYXlzKGNoYXJ0RGF0YS5zZXJpZXNbMF0ucG9pbnRzKTtcbiAgICBsZXQgYm91bmRzID0gREcuUmVjdC5mcm9tWFlBcnJheXMoeHMsIHlzKTtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IGNoYXJ0RGF0YS5zZXJpZXMhLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCB7eHMsIHlzfSA9IGdldFBvaW50c0FycmF5cyhjaGFydERhdGEuc2VyaWVzW2ldLnBvaW50cyk7XG4gICAgICBpZiAoeHMuc29tZSgoeCkgPT4geCA9PT0gdW5kZWZpbmVkKSB8fCB5cy5zb21lKCh5KSA9PiB5ID09PSB1bmRlZmluZWQpKVxuICAgICAgICBjb250aW51ZTtcbiAgICAgIGJvdW5kcyA9IGJvdW5kcy51bmlvbihERy5SZWN0LmZyb21YWUFycmF5cyh4cywgeXMpKTtcbiAgICB9XG4gICAgcmV0dXJuIG8gPyBjaGFuZ2VCb3VuZHMoYm91bmRzLCBvISk6IGJvdW5kcztcbiAgfVxufVxuXG4vKiogUmV0dXJucyBzZXJpZXMgZml0IGZ1bmN0aW9uICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VyaWVzRml0RnVuY3Rpb24oc2VyaWVzOiBJRml0U2VyaWVzKTogRml0RnVuY3Rpb24ge1xuICByZXR1cm4gZ2V0T3JDcmVhdGVGaXRGdW5jdGlvbihzZXJpZXMuZml0RnVuY3Rpb24hKTtcbn1cblxuLyoqIFJldHVybnMgYSBjdXJ2ZSBmdW5jdGlvbiwgZWl0aGVyIHVzaW5nIHRoZSBwcmUtY29tcHV0ZWQgcGFyYW1ldGVycyBvciBieSBmaXR0aW5nIG9uLXRoZS1mbHkgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJ2ZShzZXJpZXM6IElGaXRTZXJpZXMsIGZpdEZ1bmM6IEZpdEZ1bmN0aW9uKTogKHg6IG51bWJlcikgPT4gbnVtYmVyIHtcbiAgY29uc3QgcGFyYW1zID0gbmV3IEZsb2F0MzJBcnJheShzZXJpZXMucGFyYW1ldGVycz8ubGVuZ3RoISk7XG4gIHBhcmFtcy5zZXQoc2VyaWVzLnBhcmFtZXRlcnMhKTtcbiAgcmV0dXJuIGdldEZpdHRlZEN1cnZlKGZpdEZ1bmMueSwgcGFyYW1zKTtcbn1cblxuLyoqIFJldHVybnMgdGhlIGRhdGEgcG9pbnRzIG9mIGEgc2VyaWVzIHdpdGggZmlsdGVyZWQgb3V0bGllcnMgYW5kIGxvZ2FyaXRobWljIGRhdGEgaWYgbmVlZGVkICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGF0YVBvaW50cyhzZXJpZXM6IElGaXRTZXJpZXMsIGxvZ09wdGlvbnM/OiBMb2dPcHRpb25zLCB1c2VyUGFyYW1zRmxhZz86IGJvb2xlYW4pOlxuICB7eDogbnVtYmVyW10sIHk6IG51bWJlcltdfSB7XG4gIGNvbnN0IHBvaW50c1RvTWFwID0gdXNlclBhcmFtc0ZsYWcgPyBzZXJpZXMucG9pbnRzIDogc2VyaWVzLnBvaW50cy5maWx0ZXIoKHApID0+ICFwLm91dGxpZXIpO1xuICByZXR1cm4ge3g6IHBvaW50c1RvTWFwLm1hcCgocCkgPT4gbG9nT3B0aW9ucz8ubG9nWCA/IE1hdGgubG9nMTAocC54KSA6IHAueCksXG4gICAgeTogcG9pbnRzVG9NYXAubWFwKChwKSA9PiBsb2dPcHRpb25zPy5sb2dZID8gTWF0aC5sb2cxMChwLnkpIDogcC55KX07XG59XG5cbi8qKiBGaXRzIHRoZSBzZXJpZXMgZGF0YSBhY2NvcmRpbmcgdG8gdGhlIHNlcmllcyBmaXR0aW5nIHNldHRpbmdzICovXG5leHBvcnQgZnVuY3Rpb24gZml0U2VyaWVzKHNlcmllczogSUZpdFNlcmllcywgZml0RnVuYzogRml0RnVuY3Rpb24sIGRhdGFQb2ludHM/OiB7eDogbnVtYmVyW10sIHk6IG51bWJlcltdfSxcbiAgbG9nT3B0aW9ucz86IExvZ09wdGlvbnMpOiBGaXRDdXJ2ZSB7XG4gIGRhdGFQb2ludHMgPz89IGdldERhdGFQb2ludHMoc2VyaWVzLCBsb2dPcHRpb25zLCBmYWxzZSk7XG4gIGlmIChzZXJpZXMucGFyYW1ldGVyQm91bmRzICYmIGxvZ09wdGlvbnM/LmxvZ1gpXG4gICAgc2VyaWVzLnBhcmFtZXRlckJvdW5kc1syXSA9IGxvZ0lDNTBQYXJhbWV0ZXJCb3VuZHMoc2VyaWVzLnBhcmFtZXRlckJvdW5kc1syXSk7XG4gIHJldHVybiBmaXREYXRhKGdldE1lZGlhblBvaW50cyhkYXRhUG9pbnRzKSwgZml0RnVuYywgc2VyaWVzLmVycm9yTW9kZWwgPz8gRml0RXJyb3JNb2RlbC5DT05TVEFOVCBhcyBGaXRFcnJvck1vZGVsVHlwZSxcbiAgICBzZXJpZXMucGFyYW1ldGVyQm91bmRzKTtcbn1cblxuLyoqIFJldHVybnMgc2VyaWVzIGNvbmZpZGVuY2UgaW50ZXJ2YWwgZnVuY3Rpb25zICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VyaWVzQ29uZmlkZW5jZUludGVydmFsKHNlcmllczogSUZpdFNlcmllcywgZml0RnVuYzogRml0RnVuY3Rpb24sIHVzZXJQYXJhbXNGbGFnOiBib29sZWFuLFxuICBkYXRhUG9pbnRzPzoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0sIGxvZ09wdGlvbnM/OiBMb2dPcHRpb25zKTogRml0Q29uZmlkZW5jZUludGVydmFscyB7XG4gIGRhdGFQb2ludHMgPz89IGdldERhdGFQb2ludHMoc2VyaWVzLCBsb2dPcHRpb25zLCB1c2VyUGFyYW1zRmxhZyk7XG4gIGlmICghc2VyaWVzLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBmaXRTZXJpZXMoc2VyaWVzLCBmaXRGdW5jLCBkYXRhUG9pbnRzKS5wYXJhbWV0ZXJzO1xuICAgIHNlcmllcy5wYXJhbWV0ZXJzID0gWy4uLnBhcmFtc107XG4gIH1cbiAgY29uc3QgcGFyYW1zID0gbmV3IEZsb2F0MzJBcnJheShzZXJpZXMucGFyYW1ldGVycz8ubGVuZ3RoISk7XG4gIHBhcmFtcy5zZXQoc2VyaWVzLnBhcmFtZXRlcnMhKTtcbiAgcmV0dXJuIGdldEN1cnZlQ29uZmlkZW5jZUludGVydmFscyhkYXRhUG9pbnRzLCBwYXJhbXMsIGZpdEZ1bmMueSwgMC4wNSxcbiAgICBzZXJpZXMuZXJyb3JNb2RlbCA/PyBGaXRFcnJvck1vZGVsLkNPTlNUQU5UIGFzIEZpdEVycm9yTW9kZWxUeXBlKTtcbn1cblxuLyoqIFJldHVybnMgc2VyaWVzIHN0YXRpc3RpY3MgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTZXJpZXNTdGF0aXN0aWNzKHNlcmllczogSUZpdFNlcmllcywgZml0RnVuYzogRml0RnVuY3Rpb24sIGRhdGFQb2ludHM/OiB7eDogbnVtYmVyW10sIHk6IG51bWJlcltdfSxcbiAgbG9nT3B0aW9ucz86IExvZ09wdGlvbnMpOiBGaXRTdGF0aXN0aWNzIHtcbiAgZGF0YVBvaW50cyA/Pz0gZ2V0RGF0YVBvaW50cyhzZXJpZXMsIGxvZ09wdGlvbnMsIGZhbHNlKTtcbiAgaWYgKCFzZXJpZXMucGFyYW1ldGVycykge1xuICAgIGNvbnN0IHBhcmFtcyA9IGZpdFNlcmllcyhzZXJpZXMsIGZpdEZ1bmMsIGRhdGFQb2ludHMpLnBhcmFtZXRlcnM7XG4gICAgc2VyaWVzLnBhcmFtZXRlcnMgPSBbLi4ucGFyYW1zXTtcbiAgfVxuICBjb25zdCBwYXJhbXMgPSBuZXcgRmxvYXQzMkFycmF5KHNlcmllcy5wYXJhbWV0ZXJzPy5sZW5ndGghKTtcbiAgcGFyYW1zLnNldChzZXJpZXMucGFyYW1ldGVycyEpO1xuICByZXR1cm4gZ2V0U3RhdGlzdGljcyhkYXRhUG9pbnRzLCBwYXJhbXMsIGZpdEZ1bmMueSwgdHJ1ZSk7XG59XG4iXX0=
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml0LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmaXQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQ0FBZ0M7QUFDaEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV0QyxPQUFPLEVBQ0wsYUFBYSxFQUNiLGFBQWEsRUFDYixjQUFjLEVBT2Qsc0JBQXNCLEdBSXZCLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBQyxPQUFPLEVBQWUsbUJBQW1CLEVBQy9DLDJCQUEyQixFQUFFLHNCQUFzQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBUTVFLGlGQUFpRjtBQUNqRixTQUFTLG9CQUFvQixDQUFDLFVBQXlCO0lBQ3JELE1BQU0sQ0FBQyxHQUFRLEVBQUUsQ0FBQztJQUNsQixLQUFLLE1BQU0sQ0FBQyxJQUFJLFVBQVUsRUFBRTtRQUMxQixJQUFJLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSTtZQUN6QixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7S0FDOUI7SUFDRCxPQUFPLENBQUMsQ0FBQztBQUNYLENBQUM7QUFFRCxxSEFBcUg7QUFDckgsbURBQW1EO0FBQ25ELE1BQU0sVUFBVSxzQkFBc0I7SUFDcEMsT0FBTztRQUNMLFlBQVksRUFBRSxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQztRQUMxRCxhQUFhLEVBQUUsb0JBQW9CLENBQUMsbUJBQW1CLENBQUM7S0FDekQsQ0FBQztBQUNKLENBQUM7QUFFRCx5REFBeUQ7QUFDekQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFtQjtJQUNqRCxNQUFNLEVBQUUsR0FBYSxFQUFFLENBQUM7SUFDeEIsTUFBTSxFQUFFLEdBQWEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ3RDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3JCO0lBQ0QsT0FBTyxFQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBQyxDQUFDO0FBQzFCLENBQUM7QUFFRCxpREFBaUQ7QUFDakQsU0FBUyxTQUFTLENBQUMsTUFBa0M7SUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuSCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQseUVBQXlFO0FBQ3pFLFNBQVMsZUFBZSxDQUFDLElBQWdDO0lBQ3ZELE1BQU0sWUFBWSxHQUErQixFQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBQyxDQUFDO0lBQ2hFLE1BQU0sYUFBYSxHQUErQixFQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztJQUNuRixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDdEMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDcEMsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEQsYUFBYSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEQsU0FBUztTQUNWO1FBQ0QsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNELFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDL0MsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QixhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQy9CO0lBQ0QsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNELFlBQVksQ0FB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LElBQUksWUFBWSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUMzQyxjQUFjLEdBQUcsSUFBSSxDQUFDO0tBQ3ZCO0lBRUQsT0FBTyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQsU0FBUyxTQUFTLENBQUMsTUFBZSxFQUFFLFlBQThCLEVBQUUsS0FBSyxHQUFHLElBQUk7SUFDOUUsSUFBSSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztJQUN2QixJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQ3pCLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7SUFDckIsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUUzQixJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUU7UUFDckIsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzVDLEtBQUssR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7S0FDN0I7U0FDSTtRQUNILE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDWCxLQUFLLElBQUksRUFBRSxDQUFDO0tBQ2I7SUFDRCxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUU7UUFDckIsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMs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QUFVLEVBQUU7UUFDdEIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO0tBQ2pDO0lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxZQUFZLENBQUMsTUFBQSxNQUFNLENBQUMsVUFBVSwwQ0FBRSxNQUFPLENBQUMsQ0FBQztJQUM1RCxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxVQUFXLENBQUMsQ0FBQztJQUMvQixPQUFPLGFBQWEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHZhbGlkLWpzZG9jICovXG5pbXBvcnQgKiBhcyBERyBmcm9tICdkYXRhZ3Jvay1hcGkvZGcnO1xuXG5pbXBvcnQge1xuICBGaXRFcnJvck1vZGVsLFxuICBnZXRTdGF0aXN0aWNzLFxuICBnZXRGaXR0ZWRDdXJ2ZSxcbiAgRml0U3RhdGlzdGljcyxcbiAgRml0Q29uZmlkZW5jZUludGVydmFscyxcbiAgRml0Q3VydmUsXG4gIElGaXRQb2ludCxcbiAgSUZpdENoYXJ0RGF0YSxcbiAgSUZpdFNlcmllcyxcbiAgZml0Q2hhcnREYXRhUHJvcGVydGllcyxcbiAgRml0UGFyYW1Cb3VuZHMsXG4gIElGaXRDaGFydE9wdGlvbnMsXG4gIEZpdEVycm9yTW9kZWxUeXBlLFxufSBmcm9tICcuL2ZpdC1jdXJ2ZSc7XG5pbXBvcnQge2ZpdERhdGEsIEZpdEZ1bmN0aW9uLCBmaXRTZXJpZXNQcm9wZXJ0aWVzLFxuICBnZXRDdXJ2ZUNvbmZpZGVuY2VJbnRlcnZhbHMsIGdldE9yQ3JlYXRlRml0RnVuY3Rpb259IGZyb20gJy4vbmV3LWZpdC1BUEknO1xuXG5leHBvcnQgdHlwZSBMb2dPcHRpb25zID0ge1xuICBsb2dYOiBib29sZWFuIHwgdW5kZWZpbmVkLFxuICBsb2dZOiBib29sZWFuIHwgdW5kZWZpbmVkXG59O1xuXG5cbi8qKiBDcmVhdGVzIG5ldyBvYmplY3Qgd2l0aCB0aGUgZGVmYXVsdCB2YWx1ZXMgc3BlY2lmaWVkIGluIHtAbGluayBwcm9wZXJ0aWVzfSAqL1xuZnVuY3Rpb24gY3JlYXRlRnJvbVByb3BlcnRpZXMocHJvcGVydGllczogREcuUHJvcGVydHlbXSk6IGFueSB7XG4gIGNvbnN0IG86IGFueSA9IHt9O1xuICBmb3IgKGNvbnN0IHAgb2YgcHJvcGVydGllcykge1xuICAgIGlmIChwLmRlZmF1bHRWYWx1ZSAhPT0gbnVsbClcbiAgICAgIG9bcC5uYW1lXSA9IHAuZGVmYXVsdFZhbHVlO1xuICB9XG4gIHJldHVybiBvO1xufVxuXG4vLyBUT0RPOiBzZXQgY29sdW1uIHdpdGggZml0IHJlYWRvbmx5IHZhbHVlIChpbiBkZXRlY3RvcnMpIC0gdHJ5IHRvIG9ubHkgc2hvdyBjaGFydCAtIHJlbW92ZSBlZGl0YWJsZSBvciBwcmV2ZW50IGl0Pz9cbi8qKiBDcmVhdGVzIGRlZmF1bHQge0BsaW5rIElGaXRDaGFydERhdGF9IG9iamVjdCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURlZmF1bHRDaGFydERhdGEoKTogSUZpdENoYXJ0RGF0YSB7XG4gIHJldHVybiB7XG4gICAgY2hhcnRPcHRpb25zOiBjcmVhdGVGcm9tUHJvcGVydGllcyhmaXRDaGFydERhdGFQcm9wZXJ0aWVzKSxcbiAgICBzZXJpZXNPcHRpb25zOiBjcmVhdGVGcm9tUHJvcGVydGllcyhmaXRTZXJpZXNQcm9wZXJ0aWVzKSxcbiAgfTtcbn1cblxuLyoqIFJldHVybnMgcG9pbnRzIGFycmF5cyBmcm9tIHtAbGluayBJRml0UG9pbnR9IGFycmF5ICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UG9pbnRzQXJyYXlzKHBvaW50czogSUZpdFBvaW50W10pOiB7eHM6IG51bWJlcltdLCB5czogbnVtYmVyW119IHtcbiAgY29uc3QgeHM6IG51bWJlcltdID0gW107XG4gIGNvbnN0IHlzOiBudW1iZXJbXSA9IFtdO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IHBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgIHhzW2ldID0gcG9pbnRzW2ldLng7XG4gICAgeXNbaV0gPSBwb2ludHNbaV0ueTtcbiAgfVxuICByZXR1cm4ge3hzOiB4cywgeXM6IHlzfTtcbn1cblxuLyoqIFJldHVybnMgbWVkaWFuIGZyb20gd2l0aGluIG11bHRpcGxlIHBvaW50cyAqL1xuZnVuY3Rpb24gZ2V0TWVkaWFuKHBvaW50czoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0pOiBudW1iZXIge1xuICBjb25zdCBtaWQgPSBNYXRoLmZsb29yKHBvaW50cy55Lmxlbmd0aCAvIDIpO1xuICBjb25zdCBzb3J0ZWRQb2ludHMgPSBwb2ludHMueS5zb3J0KChhLCBiKSA9PiBhIC0gYik7XG4gIGNvbnN0IG1lZGlhbiA9IHNvcnRlZFBvaW50cy5sZW5ndGggJSAyID09PSAwID8gKHNvcnRlZFBvaW50c1ttaWQgLSAxXSArIHNvcnRlZFBvaW50c1ttaWRdKSAvIDIgOiBzb3J0ZWRQb2ludHNbbWlkXTtcbiAgcmV0dXJuIG1lZGlhbjtcbn1cblxuLyoqIFJldHVybnMgbWVkaWFuIHBvaW50cyBmcm9tIHdpdGhpbiBtdWx0aXBsZSBwb2ludHMgd2l0aCB0aGUgc2FtZSB4LiAqL1xuZnVuY3Rpb24gZ2V0TWVkaWFuUG9pbnRzKGRhdGE6IHt4OiBudW1iZXJbXSwgeTogbnVtYmVyW119KToge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0ge1xuICBjb25zdCBtZWRpYW5Qb2ludHM6IHt4OiBudW1iZXJbXSwgeTogbnVtYmVyW119ID0ge3g6IFtdLCB5OiBbXX07XG4gIGNvbnN0IGN1cnJlbnRQb2ludHM6IHt4OiBudW1iZXJbXSwgeTogbnVtYmVyW119ID0ge3g6IFtkYXRhLnhbMF1dLCB5OiBbZGF0YS55WzBdXX07XG4gIGZvciAobGV0IGkgPSAxOyBpIDwgZGF0YS54Lmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKGRhdGEueFtpXSA9PT0gY3VycmVudFBvaW50cy54WzBdKSB7XG4gICAgICBjdXJyZW50UG9pbnRzLnhbY3VycmVudFBvaW50cy54Lmxlbmd0aF0gPSBkYXRhLnhbaV07XG4gICAgICBjdXJyZW50UG9pbnRzLnlbY3VycmVudFBvaW50cy55Lmxlbmd0aF0gPSBkYXRhLnlbaV07XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgY29uc3QgbWVkaWFuID0gZ2V0TWVkaWFuKGN1cnJlbnRQb2ludHMpO1xuICAgIG1lZGlhblBvaW50cy54W21lZGlhblBvaW50cy54Lmxlbmd0aF0gPSBjdXJyZW50UG9pbnRzLnhbMF07XG4gICAgbWVkaWFuUG9pbnRzLnlbbWVkaWFuUG9pbnRzLnkubGVuZ3RoXSA9IG1lZGlhbjtcbiAgICBjdXJyZW50UG9pbnRzLnggPSBbZGF0YS54W2ldXTtcbiAgICBjdXJyZW50UG9pbnRzLnkgPSBbZGF0YS55W2ldXTtcbiAgfVxuICBjb25zdCBtZWRpYW4gPSBnZXRNZWRpYW4oY3VycmVudFBvaW50cyk7XG4gIG1lZGlhblBvaW50cy54W21lZGlhblBvaW50cy54Lmxlbmd0aF0gPSBjdXJyZW50UG9pbnRzLnhbMF07XG4gIG1lZGlhblBvaW50cy55W21lZGlhblBvaW50cy55Lmxlbmd0aF0gPSBtZWRpYW47XG5cbiAgcmV0dXJuIG1lZGlhblBvaW50cztcbn1cblxuLyoqIFJldHVybnMgbG9nYXJpdGhtaWMgSUM1MCBwYXJhbWV0ZXIgYm91bmRzLiAqL1xuZnVuY3Rpb24gbG9nSUM1MFBhcmFtZXRlckJvdW5kcyhpYzUwQm91bmRzOiBGaXRQYXJhbUJvdW5kcyk6IEZpdFBhcmFtQm91bmRzIHtcbiAgaWYgKGljNTBCb3VuZHMpIHtcbiAgICBpZiAoaWM1MEJvdW5kcy5tYXggIT09IHVuZGVmaW5lZClcbiAgICAgIGljNTBCb3VuZHMubWF4ID0gTWF0aC5sb2cxMChpYzUwQm91bmRzLm1heCk7XG4gICAgaWYgKGljNTBCb3VuZHMubWluICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGljNTBCb3VuZHMubWluID0gaWM1MEJvdW5kcy5taW4gPT09IDAgP1xuICAgICAgICAtTnVtYmVyLk1BWF9WQUxVRSA6IE1hdGgubG9nMTAoaWM1MEJvdW5kcy5taW4pO1xuICAgIH1cbiAgfVxuICByZXR1cm4gaWM1MEJvdW5kcztcbn1cblxuZnVuY3Rpb24gY2hhbmdlQm91bmRzKGJvdW5kczogREcuUmVjdCwgY2hhcnRPcHRpb25zOiBJRml0Q2hhcnRPcHRpb25zKTogREcuUmVjdCB7XG4gIGxldCB4ID0gYm91bmRzLng7XG4gIGxldCB5ID0gYm91bmRzLnk7XG4gIGxldCB3aWR0aCA9IGJvdW5kcy53aWR0aDtcbiAgbGV0IGhlaWdodCA9IGJvdW5kcy5oZWlnaHQ7XG4gIGxldCBib3VuZHNBZGp1c3RlZCA9IGZhbHNlO1xuXG4gIGlmIChjaGFydE9wdGlvbnMubWluWCAhPSBudWxsICYmIGNoYXJ0T3B0aW9ucy5taW5YIDw9IGJvdW5kcy5tYXhYICYmXG4gICAgKCghY2hhcnRPcHRpb25zLmxvZ1gpIHx8IChjaGFydE9wdGlvbnMubG9nWCAmJiBjaGFydE9wdGlvbnMubWluWCA+IDApKSkge1xuICAgIHdpZHRoICs9IHggLSBjaGFydE9wdGlvbnMubWluWDtcbiAgICB4ID0gY2hhcnRPcHRpb25zLm1pblg7XG4gICAgYm91bmRzQWRqdXN0ZWQgPSB0cnVlO1xuICB9XG4gIGlmIChjaGFydE9wdGlvbnMubWF4WCAhPSBudWxsICYmIGNoYXJ0T3B0aW9ucy5tYXhYID49IGJvdW5kcy5taW5YICYmXG4gICAgKCghY2hhcnRPcHRpb25zLmxvZ1gpIHx8IChjaGFydE9wdGlvbnMubG9nWCAmJiBjaGFydE9wdGlvbnMubWF4WCA+IDApKSkge1xuICAgIHdpZHRoICs9IGNoYXJ0T3B0aW9ucy5tYXhYIC0gKHggKyB3aWR0aCk7XG4gICAgYm91bmRzQWRqdXN0ZWQgPSB0cnVlO1xuICB9XG4gIGlmIChjaGFydE9wdGlvbnMubWluWSAhPSBudWxsICYmIGNoYXJ0T3B0aW9ucy5taW5ZIDw9IGJvdW5kcy5tYXhZICYmXG4gICAgKCghY2hhcnRPcHRpb25zLmxvZ1kpIHx8IChjaGFydE9wdGlvbnMubG9nWSAmJiBjaGFydE9wdGlvbnMubWluWSA+IDApKSkge1xuICAgIGhlaWdodCArPSB5IC0gY2hhcnRPcHRpb25zLm1pblk7XG4gICAgeSA9IGNoYXJ0T3B0aW9ucy5taW5ZO1xuICAgIGJvdW5kc0FkanVzdGVkID0gdHJ1ZTtcbiAgfVxuICBpZiAoY2hhcnRPcHRpb25zLm1heFkgIT0gbnVsbCAmJiBjaGFydE9wdGlvbnMubWF4WSA+PSBib3VuZHMubWluWSAmJlxuICAgICgoIWNoYXJ0T3B0aW9ucy5sb2dZKSB8fCAoY2hhcnRPcHRpb25zLmxvZ1kgJiYgY2hhcnRPcHRpb25zLm1heFkgPiAwKSkpIHtcbiAgICBoZWlnaHQgKz0gY2hhcnRPcHRpb25zLm1heFkgLSAoeSArIGhlaWdodCk7XG4gICAgYm91bmRzQWRqdXN0ZWQgPSB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGJvdW5kc0FkanVzdGVkID8gbmV3IERHLlJlY3QoeCwgeSwgd2lkdGgsIGhlaWdodCkgOiBwYWRCb3VuZHMoYm91bmRzLCBjaGFydE9wdGlvbnMpO1xufVxuXG5mdW5jdGlvbiBwYWRCb3VuZHMoYm91bmRzOiBERy5SZWN0LCBjaGFydE9wdGlvbnM6IElGaXRDaGFydE9wdGlvbnMsIHJhdGlvID0gMC4wNSk6IERHLlJlY3Qge1xuICBsZXQgbGVmdCA9IGJvdW5kcy5sZWZ0O1xuICBsZXQgcmlnaHQgPSBib3VuZHMucmlnaHQ7XG4gIGxldCB0b3AgPSBib3VuZHMudG9wO1xuICBsZXQgYm90dG9tID0gYm91bmRzLmJvdHRvbTtcblxuICBpZiAoY2hhcnRPcHRpb25zLmxvZ1gpIHtcbiAgICBsZWZ0ID0gbGVmdCA+IDAgPyBsZWZ0IC8gKDEgKyByYXRpbykgOiBsZWZ0O1xuICAgIHJpZ2h0ID0gcmlnaHQgKiAoMSArIHJhdGlvKTtcbiAgfVxuICBlbHNlIHtcbiAgICBjb25zdCBkeCA9IGJvdW5kcy53aWR0aCAqIHJhdGlvO1xuICAgIGxlZnQgLT0gZHg7XG4gICAgcmlnaHQgKz0gZHg7XG4gIH1cbiAgaWYgKGNoYXJ0T3B0aW9ucy5sb2dZKSB7XG4gICAgdG9wID0gdG9wID4gMCA/IHRvcCAvICgxICsgcmF0aW8pIDogdG9wO1xuICAgIGJvdHRvbSA9IGJvdHRvbSAqICgxICsgcmF0aW8pO1xuICB9XG4gIGVsc2Uge1xuICAgIGNvbnN0IGR5ID0gYm91bmRzLmhlaWdodCAqIHJhdGlvO1xuICAgIHRvcCAtPSBkeTtcbiAgICBib3R0b20gKz0gZHk7XG4gIH1cblxuICByZXR1cm4gbmV3IERHLlJlY3QobGVmdCwgdG9wLCByaWdodCAtIGxlZnQsIGJvdHRvbSAtIHRvcCk7XG59XG5cbi8qKiBSZXR1cm5zIHRoZSBib3VuZHMgb2YgYW4ge0BsaW5rIElGaXRDaGFydERhdGF9IG9iamVjdCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENoYXJ0Qm91bmRzKGNoYXJ0RGF0YTogSUZpdENoYXJ0RGF0YSk6IERHLlJlY3Qge1xuICBjb25zdCBvID0gY2hhcnREYXRhLmNoYXJ0T3B0aW9ucztcbiAgaWYgKCFjaGFydERhdGEuc2VyaWVzPy5sZW5ndGggfHwgY2hhcnREYXRhLnNlcmllcy5sZW5ndGggPT09IDApXG4gICAgcmV0dXJuIG5ldyBERy5SZWN0KDAsIDAsIDEsIDEpO1xuICBlbHNlIHtcbiAgICBjb25zdCB7eHMsIHlzfSA9IGdldFBvaW50c0FycmF5cyhjaGFydERhdGEuc2VyaWVzWzBdLnBvaW50cyk7XG4gICAgbGV0IGJvdW5kcyA9IERHLlJlY3QuZnJvbVhZQXJyYXlzKHhzLCB5cyk7XG4gICAgZm9yIChsZXQgaSA9IDE7IGkgPCBjaGFydERhdGEuc2VyaWVzIS5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3Qge3hzLCB5c30gPSBnZXRQb2ludHNBcnJheXMoY2hhcnREYXRhLnNlcmllc1tpXS5wb2ludHMpO1xuICAgICAgaWYgKHhzLnNvbWUoKHgpID0+IHggPT09IHVuZGVmaW5lZCkgfHwgeXMuc29tZSgoeSkgPT4geSA9PT0gdW5kZWZpbmVkKSlcbiAgICAgICAgY29udGludWU7XG4gICAgICBib3VuZHMgPSBib3VuZHMudW5pb24oREcuUmVjdC5mcm9tWFlBcnJheXMoeHMsIHlzKSk7XG4gICAgfVxuICAgIHJldHVybiBvID8gY2hhbmdlQm91bmRzKGJvdW5kcywgbyEpOiBwYWRCb3VuZHMoYm91bmRzLCBvISk7XG4gIH1cbn1cblxuLyoqIFJldHVybnMgc2VyaWVzIGZpdCBmdW5jdGlvbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlcmllc0ZpdEZ1bmN0aW9uKHNlcmllczogSUZpdFNlcmllcyk6IEZpdEZ1bmN0aW9uIHtcbiAgcmV0dXJuIGdldE9yQ3JlYXRlRml0RnVuY3Rpb24oc2VyaWVzLmZpdEZ1bmN0aW9uISk7XG59XG5cbi8qKiBSZXR1cm5zIGEgY3VydmUgZnVuY3Rpb24sIGVpdGhlciB1c2luZyB0aGUgcHJlLWNvbXB1dGVkIHBhcmFtZXRlcnMgb3IgYnkgZml0dGluZyBvbi10aGUtZmx5ICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q3VydmUoc2VyaWVzOiBJRml0U2VyaWVzLCBmaXRGdW5jOiBGaXRGdW5jdGlvbik6ICh4OiBudW1iZXIpID0+IG51bWJlciB7XG4gIGNvbnN0IHBhcmFtcyA9IG5ldyBGbG9hdDMyQXJyYXkoc2VyaWVzLnBhcmFtZXRlcnM/Lmxlbmd0aCEpO1xuICBwYXJhbXMuc2V0KHNlcmllcy5wYXJhbWV0ZXJzISk7XG4gIHJldHVybiBnZXRGaXR0ZWRDdXJ2ZShmaXRGdW5jLnksIHBhcmFtcyk7XG59XG5cbi8qKiBSZXR1cm5zIHRoZSBkYXRhIHBvaW50cyBvZiBhIHNlcmllcyB3aXRoIGZpbHRlcmVkIG91dGxpZXJzIGFuZCBsb2dhcml0aG1pYyBkYXRhIGlmIG5lZWRlZCAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERhdGFQb2ludHMoc2VyaWVzOiBJRml0U2VyaWVzLCBsb2dPcHRpb25zPzogTG9nT3B0aW9ucywgdXNlclBhcmFtc0ZsYWc/OiBib29sZWFuKTpcbiAge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0ge1xuICBjb25zdCBwb2ludHNUb01hcCA9IHVzZXJQYXJhbXNGbGFnID8gc2VyaWVzLnBvaW50cyA6IHNlcmllcy5wb2ludHMuZmlsdGVyKChwKSA9PiAhcC5vdXRsaWVyKTtcbiAgcmV0dXJuIHt4OiBwb2ludHNUb01hcC5tYXAoKHApID0+IGxvZ09wdGlvbnM/LmxvZ1ggPyBNYXRoLmxvZzEwKHAueCkgOiBwLngpLFxuICAgIHk6IHBvaW50c1RvTWFwLm1hcCgocCkgPT4gbG9nT3B0aW9ucz8ubG9nWSA/IE1hdGgubG9nMTAocC55KSA6IHAueSl9O1xufVxuXG4vKiogRml0cyB0aGUgc2VyaWVzIGRhdGEgYWNjb3JkaW5nIHRvIHRoZSBzZXJpZXMgZml0dGluZyBzZXR0aW5ncyAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpdFNlcmllcyhzZXJpZXM6IElGaXRTZXJpZXMsIGZpdEZ1bmM6IEZpdEZ1bmN0aW9uLCBkYXRhUG9pbnRzPzoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0sXG4gIGxvZ09wdGlvbnM/OiBMb2dPcHRpb25zKTogRml0Q3VydmUge1xuICBkYXRhUG9pbnRzID8/PSBnZXREYXRhUG9pbnRzKHNlcmllcywgbG9nT3B0aW9ucywgZmFsc2UpO1xuICBpZiAoc2VyaWVzLnBhcmFtZXRlckJvdW5kcyAmJiBsb2dPcHRpb25zPy5sb2dYKVxuICAgIHNlcmllcy5wYXJhbWV0ZXJCb3VuZHNbMl0gPSBsb2dJQzUwUGFyYW1ldGVyQm91bmRzKHNlcmllcy5wYXJhbWV0ZXJCb3VuZHNbMl0pO1xuICByZXR1cm4gZml0RGF0YShnZXRNZWRpYW5Qb2ludHMoZGF0YVBvaW50cyksIGZpdEZ1bmMsIHNlcmllcy5lcnJvck1vZGVsID8/IEZpdEVycm9yTW9kZWwuQ09OU1RBTlQgYXMgRml0RXJyb3JNb2RlbFR5cGUsXG4gICAgc2VyaWVzLnBhcmFtZXRlckJvdW5kcyk7XG59XG5cbi8qKiBSZXR1cm5zIHNlcmllcyBjb25maWRlbmNlIGludGVydmFsIGZ1bmN0aW9ucyAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNlcmllc0NvbmZpZGVuY2VJbnRlcnZhbChzZXJpZXM6IElGaXRTZXJpZXMsIGZpdEZ1bmM6IEZpdEZ1bmN0aW9uLCB1c2VyUGFyYW1zRmxhZzogYm9vbGVhbixcbiAgZGF0YVBvaW50cz86IHt4OiBudW1iZXJbXSwgeTogbnVtYmVyW119LCBsb2dPcHRpb25zPzogTG9nT3B0aW9ucyk6IEZpdENvbmZpZGVuY2VJbnRlcnZhbHMge1xuICBkYXRhUG9pbnRzID8/PSBnZXREYXRhUG9pbnRzKHNlcmllcywgbG9nT3B0aW9ucywgdXNlclBhcmFtc0ZsYWcpO1xuICBpZiAoIXNlcmllcy5wYXJhbWV0ZXJzKSB7XG4gICAgY29uc3QgcGFyYW1zID0gZml0U2VyaWVzKHNlcmllcywgZml0RnVuYywgZGF0YVBvaW50cykucGFyYW1ldGVycztcbiAgICBzZXJpZXMucGFyYW1ldGVycyA9IFsuLi5wYXJhbXNdO1xuICB9XG4gIGNvbnN0IHBhcmFtcyA9IG5ldyBGbG9hdDMyQXJyYXkoc2VyaWVzLnBhcmFtZXRlcnM/Lmxlbmd0aCEpO1xuICBwYXJhbXMuc2V0KHNlcmllcy5wYXJhbWV0ZXJzISk7XG4gIHJldHVybiBnZXRDdXJ2ZUNvbmZpZGVuY2VJbnRlcnZhbHMoZGF0YVBvaW50cywgcGFyYW1zLCBmaXRGdW5jLnksIDAuMDUsXG4gICAgc2VyaWVzLmVycm9yTW9kZWwgPz8gRml0RXJyb3JNb2RlbC5DT05TVEFOVCBhcyBGaXRFcnJvck1vZGVsVHlwZSk7XG59XG5cbi8qKiBSZXR1cm5zIHNlcmllcyBzdGF0aXN0aWNzICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VyaWVzU3RhdGlzdGljcyhzZXJpZXM6IElGaXRTZXJpZXMsIGZpdEZ1bmM6IEZpdEZ1bmN0aW9uLCBkYXRhUG9pbnRzPzoge3g6IG51bWJlcltdLCB5OiBudW1iZXJbXX0sXG4gIGxvZ09wdGlvbnM/OiBMb2dPcHRpb25zKTogRml0U3RhdGlzdGljcyB7XG4gIGRhdGFQb2ludHMgPz89IGdldERhdGFQb2ludHMoc2VyaWVzLCBsb2dPcHRpb25zLCBmYWxzZSk7XG4gIGlmICghc2VyaWVzLnBhcmFtZXRlcnMpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBmaXRTZXJpZXMoc2VyaWVzLCBmaXRGdW5jLCBkYXRhUG9pbnRzKS5wYXJhbWV0ZXJzO1xuICAgIHNlcmllcy5wYXJhbWV0ZXJzID0gWy4uLnBhcmFtc107XG4gIH1cbiAgY29uc3QgcGFyYW1zID0gbmV3IEZsb2F0MzJBcnJheShzZXJpZXMucGFyYW1ldGVycz8ubGVuZ3RoISk7XG4gIHBhcmFtcy5zZXQoc2VyaWVzLnBhcmFtZXRlcnMhKTtcbiAgcmV0dXJuIGdldFN0YXRpc3RpY3MoZGF0YVBvaW50cywgcGFyYW1zLCBmaXRGdW5jLnksIHRydWUpO1xufVxuIl19
@@ -194,5 +194,11 @@ export declare function getCurveConfidenceIntervals(data: {
194
194
  x: number[];
195
195
  y: number[];
196
196
  }, paramValues: Float32Array, curveFunction: (params: Float32Array, x: number) => number, confidenceLevel: number | undefined, errorModel: FitErrorModelType): FitConfidenceIntervals;
197
+ export interface FitCellOutlierToggleArgs {
198
+ gridCell: DG.GridCell;
199
+ series: IFitSeries;
200
+ seriesIdx: number;
201
+ pointIdx: number;
202
+ }
197
203
  export {};
198
204
  //# sourceMappingURL=new-fit-API.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"new-fit-API.d.ts","sourceRoot":"","sources":["new-fit-API.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"new-fit-API.d.ts","sourceRoot":"","sources":["new-fit-API.ts"],"names":[],"mappings":"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"}