@dynatrace/rum-javascript-sdk 1.329.2

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 (115) hide show
  1. package/LICENSE +174 -0
  2. package/README.md +402 -0
  3. package/dist/api/constants.d.ts +1 -0
  4. package/dist/api/constants.js +2 -0
  5. package/dist/api/dynatrace-error.d.ts +3 -0
  6. package/dist/api/dynatrace-error.js +7 -0
  7. package/dist/api/global-adapter.d.ts +1 -0
  8. package/dist/api/global-adapter.js +4 -0
  9. package/dist/api/index.d.ts +65 -0
  10. package/dist/api/index.js +110 -0
  11. package/dist/api/logging.d.ts +2 -0
  12. package/dist/api/logging.js +8 -0
  13. package/dist/api/promises/index.d.ts +85 -0
  14. package/dist/api/promises/index.js +104 -0
  15. package/dist/api/promises/user-actions.d.ts +35 -0
  16. package/dist/api/promises/user-actions.js +48 -0
  17. package/dist/api/promises/wait-for-agent.d.ts +2 -0
  18. package/dist/api/promises/wait-for-agent.js +77 -0
  19. package/dist/api/promises/wait-for-send-exception-event.d.ts +9 -0
  20. package/dist/api/promises/wait-for-send-exception-event.js +18 -0
  21. package/dist/api/promises/wait-for-user-actions.d.ts +9 -0
  22. package/dist/api/promises/wait-for-user-actions.js +18 -0
  23. package/dist/api/type-guards/is-valid-agent.d.ts +2 -0
  24. package/dist/api/type-guards/is-valid-agent.js +4 -0
  25. package/dist/api/user-actions.d.ts +62 -0
  26. package/dist/api/user-actions.js +99 -0
  27. package/dist/testing/install.d.ts +15 -0
  28. package/dist/testing/install.js +19 -0
  29. package/dist/testing/test.d.ts +111 -0
  30. package/dist/testing/test.js +229 -0
  31. package/dist/types/api/dynatrace-api-types.d.ts +319 -0
  32. package/dist/types/api/dynatrace-api-types.js +7 -0
  33. package/dist/types/api/index.d.ts +1 -0
  34. package/dist/types/api/index.js +2 -0
  35. package/dist/types/index-typedoc.d.ts +31 -0
  36. package/dist/types/index-typedoc.js +32 -0
  37. package/dist/types/index.d.ts +11 -0
  38. package/dist/types/index.js +5 -0
  39. package/dist/types/internal/beacon-query.d.ts +29 -0
  40. package/dist/types/internal/beacon-query.js +32 -0
  41. package/dist/types/internal/data-dt-config-scope.d.ts +10 -0
  42. package/dist/types/internal/data-dt-config-scope.js +12 -0
  43. package/dist/types/internal/feature-hashes.d.ts +19 -0
  44. package/dist/types/internal/feature-hashes.js +22 -0
  45. package/dist/types/internal/index.d.ts +3 -0
  46. package/dist/types/internal/index.js +4 -0
  47. package/dist/types/rum-events/event-context/event-context.d.ts +364 -0
  48. package/dist/types/rum-events/event-context/event-context.js +106 -0
  49. package/dist/types/rum-events/event-context/index.d.ts +1 -0
  50. package/dist/types/rum-events/event-context/index.js +2 -0
  51. package/dist/types/rum-events/event-updates.d.ts +4 -0
  52. package/dist/types/rum-events/event-updates.js +2 -0
  53. package/dist/types/rum-events/index.d.ts +19 -0
  54. package/dist/types/rum-events/index.js +20 -0
  55. package/dist/types/rum-events/json-event.d.ts +84 -0
  56. package/dist/types/rum-events/json-event.js +2 -0
  57. package/dist/types/rum-events/rum-biz-event.d.ts +10 -0
  58. package/dist/types/rum-events/rum-biz-event.js +15 -0
  59. package/dist/types/rum-events/rum-event.d.ts +13 -0
  60. package/dist/types/rum-events/rum-event.js +3 -0
  61. package/dist/types/rum-events/rum-internal-selfmonitoring-event.d.ts +114 -0
  62. package/dist/types/rum-events/rum-internal-selfmonitoring-event.js +99 -0
  63. package/dist/types/rum-events/rum-long-task-event.d.ts +18 -0
  64. package/dist/types/rum-events/rum-long-task-event.js +10 -0
  65. package/dist/types/rum-events/rum-page-summary-event.d.ts +370 -0
  66. package/dist/types/rum-events/rum-page-summary-event.js +184 -0
  67. package/dist/types/rum-events/rum-selfmonitoring-event.d.ts +39 -0
  68. package/dist/types/rum-events/rum-selfmonitoring-event.js +32 -0
  69. package/dist/types/rum-events/rum-session-properties-event.d.ts +9 -0
  70. package/dist/types/rum-events/rum-session-properties-event.js +3 -0
  71. package/dist/types/rum-events/rum-standalone-csp-rule-violation-event.d.ts +16 -0
  72. package/dist/types/rum-events/rum-standalone-csp-rule-violation-event.js +3 -0
  73. package/dist/types/rum-events/rum-standalone-exception-event.d.ts +16 -0
  74. package/dist/types/rum-events/rum-standalone-exception-event.js +2 -0
  75. package/dist/types/rum-events/rum-standalone-navigation-event.d.ts +23 -0
  76. package/dist/types/rum-events/rum-standalone-navigation-event.js +6 -0
  77. package/dist/types/rum-events/rum-user-action-event.d.ts +187 -0
  78. package/dist/types/rum-events/rum-user-action-event.js +78 -0
  79. package/dist/types/rum-events/rum-user-interaction-event.d.ts +302 -0
  80. package/dist/types/rum-events/rum-user-interaction-event.js +131 -0
  81. package/dist/types/rum-events/rum-visibility-change-event.d.ts +15 -0
  82. package/dist/types/rum-events/rum-visibility-change-event.js +6 -0
  83. package/dist/types/rum-events/rum-web-request-event.d.ts +269 -0
  84. package/dist/types/rum-events/rum-web-request-event.js +143 -0
  85. package/dist/types/rum-events/schema-versions.d.ts +4 -0
  86. package/dist/types/rum-events/schema-versions.js +5 -0
  87. package/dist/types/rum-events/shared-namespaces-and-fields/csp-fields.d.ts +38 -0
  88. package/dist/types/rum-events/shared-namespaces-and-fields/csp-fields.js +23 -0
  89. package/dist/types/rum-events/shared-namespaces-and-fields/exception-fields.d.ts +26 -0
  90. package/dist/types/rum-events/shared-namespaces-and-fields/exception-fields.js +19 -0
  91. package/dist/types/rum-events/shared-namespaces-and-fields/general-rum-error-fields.d.ts +66 -0
  92. package/dist/types/rum-events/shared-namespaces-and-fields/general-rum-error-fields.js +66 -0
  93. package/dist/types/rum-events/shared-namespaces-and-fields/general-rum-event-fields.d.ts +142 -0
  94. package/dist/types/rum-events/shared-namespaces-and-fields/general-rum-event-fields.js +98 -0
  95. package/dist/types/rum-events/shared-namespaces-and-fields/http-namespace.d.ts +16 -0
  96. package/dist/types/rum-events/shared-namespaces-and-fields/http-namespace.js +11 -0
  97. package/dist/types/rum-events/shared-namespaces-and-fields/index.d.ts +9 -0
  98. package/dist/types/rum-events/shared-namespaces-and-fields/index.js +10 -0
  99. package/dist/types/rum-events/shared-namespaces-and-fields/navigation-fields.d.ts +48 -0
  100. package/dist/types/rum-events/shared-namespaces-and-fields/navigation-fields.js +47 -0
  101. package/dist/types/rum-events/shared-namespaces-and-fields/page-source-fields.d.ts +9 -0
  102. package/dist/types/rum-events/shared-namespaces-and-fields/page-source-fields.js +5 -0
  103. package/dist/types/rum-events/shared-namespaces-and-fields/request-fields.d.ts +14 -0
  104. package/dist/types/rum-events/shared-namespaces-and-fields/request-fields.js +10 -0
  105. package/dist/types/rum-events/shared-namespaces-and-fields/view-source-fields.d.ts +14 -0
  106. package/dist/types/rum-events/shared-namespaces-and-fields/view-source-fields.js +9 -0
  107. package/dist/types/user-actions/index.d.ts +3 -0
  108. package/dist/types/user-actions/index.js +4 -0
  109. package/dist/types/user-actions/user-action-end-event.d.ts +28 -0
  110. package/dist/types/user-actions/user-action-end-event.js +2 -0
  111. package/dist/types/user-actions/user-action-start-options.d.ts +23 -0
  112. package/dist/types/user-actions/user-action-start-options.js +2 -0
  113. package/dist/types/user-actions/user-action-tracker.d.ts +72 -0
  114. package/dist/types/user-actions/user-action-tracker.js +2 -0
  115. package/package.json +115 -0
@@ -0,0 +1,370 @@
1
+ import type { CharacteristicsFieldsKeys, GeneralRumEventFields, GeneralRumEventFieldsKeys } from "./shared-namespaces-and-fields/general-rum-event-fields.js";
2
+ import type { eventContextSymbol, RUMSummaryEventContext } from "./event-context/event-context.js";
3
+ import type { NavigationFields } from "./shared-namespaces-and-fields/navigation-fields.js";
4
+ import type { SCHEMA_VERSION } from "./schema-versions.js";
5
+ /**
6
+ * @category Lifecycle & Navigation
7
+ */
8
+ export declare const enum PaintMetricStatus {
9
+ /**
10
+ * The page was in background while the metric was collected.
11
+ */
12
+ BACKGROUNDED = "backgrounded",
13
+ /**
14
+ * The recorded metric yielded a value below the threshold of 40ms.
15
+ */
16
+ BELOW_THRESHOLD = "below_threshold",
17
+ /**
18
+ * The metric was not reported by the client.
19
+ */
20
+ NOT_REPORTED = "not_reported",
21
+ /**
22
+ * The client does not support this metric.
23
+ */
24
+ NOT_SUPPORTED = "not_supported",
25
+ /**
26
+ * The metric was properly recorded.
27
+ */
28
+ REPORTED = "reported"
29
+ }
30
+ /**
31
+ * @category Lifecycle & Navigation
32
+ */
33
+ export declare const enum LoadingState {
34
+ /**
35
+ * The page finished loading and the load event has been fired.
36
+ */
37
+ COMPLETE = "complete",
38
+ /**
39
+ * The dom content has been loaded, see {@link !PerformanceNavigationTiming.domContentLoadedEventEnd}.
40
+ */
41
+ DOM_CONTENT_LOADED = "dom_content_loaded",
42
+ /**
43
+ * The dom is interactive, see {@link !PerformanceNavigationTiming.domInteractive}.
44
+ */
45
+ DOM_INTERACTIVE = "dom_interactive",
46
+ /**
47
+ * The page is still loading.
48
+ */
49
+ LOADING = "loading"
50
+ }
51
+ export type RUMSummaryEventTrackerPart = BackForegroundSummaryFields | CLSMetric | ErrorCountSummaryFields | FCPMetric | FIDMetric | FPMetric | INPMetric | LCPMetric | LongTaskMetric | PerformanceSummaryFields | TTFBMetric;
52
+ /**
53
+ * @category Lifecycle & Navigation
54
+ */
55
+ export interface RUMSummaryEventBase extends GeneralRumEventFields, NavigationFields, LCPMetric, FIDMetric, INPMetric, FCPMetric, CLSMetric, FPMetric, TTFBMetric, LongTaskMetric, ErrorCountSummaryFields, PerformanceSummaryFields {
56
+ [RUMPageSummaryEventKeys.PERFORMANCE$TIME_ORIGIN]: number;
57
+ [GeneralRumEventFieldsKeys.DT$RUM$SCHEMA_VERSION]: typeof SCHEMA_VERSION;
58
+ [eventContextSymbol]: RUMSummaryEventContext;
59
+ }
60
+ /**
61
+ * @category Lifecycle & Navigation
62
+ */
63
+ export interface RUMPageSummaryEvent extends RUMSummaryEventBase {
64
+ [CharacteristicsFieldsKeys.CHARACTERISTICS$HAS_PAGE_SUMMARY]: true;
65
+ [RUMPageSummaryEventKeys.PAGE$FOREGROUND_TIME]: number;
66
+ [RUMPageSummaryEventKeys.PAGE$BACKGROUND_TIME]: number;
67
+ [RUMPageSummaryEventKeys.PAGE$PRERENDER_TIME]: number;
68
+ }
69
+ /**
70
+ * @category Lifecycle & Navigation
71
+ */
72
+ export interface RUMViewSummaryEvent extends RUMSummaryEventBase {
73
+ [CharacteristicsFieldsKeys.CHARACTERISTICS$HAS_VIEW_SUMMARY]: true;
74
+ [RUMPageSummaryEventKeys.VIEW$FOREGROUND_TIME]: number;
75
+ [RUMPageSummaryEventKeys.VIEW$BACKGROUND_TIME]: number;
76
+ [RUMPageSummaryEventKeys.VIEW$PRERENDER_TIME]: number;
77
+ [RUMPageSummaryEventKeys.VIEW$SEQUENCE_NUMBER]: number;
78
+ }
79
+ /**
80
+ * @category Lifecycle & Navigation
81
+ */
82
+ export type RUMSummaryEvent = RUMPageSummaryEvent | RUMViewSummaryEvent;
83
+ /**
84
+ * @ignore
85
+ * @inline
86
+ */
87
+ export type LCPPaintMetricStatus = PaintMetricStatus.BACKGROUNDED | PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
88
+ /**
89
+ * @category Lifecycle & Navigation
90
+ */
91
+ export interface LCPMetric {
92
+ [RUMPageSummaryEventKeys.LCP$STATUS]: LCPPaintMetricStatus;
93
+ [RUMPageSummaryEventKeys.LCP$UPDATE_COUNT]?: number;
94
+ [RUMPageSummaryEventKeys.LCP$START_TIME]?: number;
95
+ [RUMPageSummaryEventKeys.LCP$URL]?: string;
96
+ [RUMPageSummaryEventKeys.LCP$LOAD_TIME]?: number;
97
+ [RUMPageSummaryEventKeys.LCP$RENDER_TIME]?: number;
98
+ [RUMPageSummaryEventKeys.LCP$SIZE]?: number;
99
+ [RUMPageSummaryEventKeys.LCP$ID]?: string;
100
+ [RUMPageSummaryEventKeys.LCP$UI_ELEMENT$XPATH]?: string[];
101
+ [RUMPageSummaryEventKeys.LCP$UI_ELEMENT$TAG_NAME]?: string;
102
+ [RUMPageSummaryEventKeys.LCP$UI_ELEMENT$RENDER_DELAY]?: number;
103
+ [RUMPageSummaryEventKeys.LCP$RESOURCE$LOAD_DELAY]?: number;
104
+ [RUMPageSummaryEventKeys.LCP$RESOURCE$LOAD_DURATION]?: number;
105
+ }
106
+ /**
107
+ * @ignore
108
+ * @inline
109
+ */
110
+ export type FIDPaintMetricStatus = PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
111
+ /**
112
+ * @category Lifecycle & Navigation
113
+ */
114
+ export interface FIDMetric {
115
+ [RUMPageSummaryEventKeys.FID$STATUS]: FIDPaintMetricStatus;
116
+ [RUMPageSummaryEventKeys.FID$LOADING_STATE]?: LoadingState;
117
+ [RUMPageSummaryEventKeys.FID$START_TIME]?: number;
118
+ [RUMPageSummaryEventKeys.FID$DURATION]?: number;
119
+ [RUMPageSummaryEventKeys.FID$NAME]?: string;
120
+ [RUMPageSummaryEventKeys.FID$PROCESSING_START]?: number;
121
+ [RUMPageSummaryEventKeys.FID$PROCESSING_END]?: number;
122
+ [RUMPageSummaryEventKeys.FID$CANCELABLE]?: boolean;
123
+ [RUMPageSummaryEventKeys.FID$UI_ELEMENT$XPATH]?: string[];
124
+ [RUMPageSummaryEventKeys.FID$UI_ELEMENT$TAG_NAME]?: string;
125
+ }
126
+ /**
127
+ * @ignore
128
+ * @inline
129
+ */
130
+ export type INPPaintMetricStatus = PaintMetricStatus.BELOW_THRESHOLD | PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
131
+ /**
132
+ * @category Lifecycle & Navigation
133
+ */
134
+ export interface INPMetric {
135
+ [RUMPageSummaryEventKeys.INP$STATUS]: INPPaintMetricStatus;
136
+ [RUMPageSummaryEventKeys.INP$UPDATE_COUNT]?: number;
137
+ [RUMPageSummaryEventKeys.INP$INTERACTION_COUNT]?: number;
138
+ [RUMPageSummaryEventKeys.INP$LOADING_STATE]?: LoadingState;
139
+ [RUMPageSummaryEventKeys.INP$START_TIME]?: number;
140
+ [RUMPageSummaryEventKeys.INP$DURATION]?: number;
141
+ [RUMPageSummaryEventKeys.INP$NAME]?: string;
142
+ [RUMPageSummaryEventKeys.INP$PROCESSING_START]?: number;
143
+ [RUMPageSummaryEventKeys.INP$PROCESSING_END]?: number;
144
+ [RUMPageSummaryEventKeys.INP$CANCELABLE]?: boolean;
145
+ [RUMPageSummaryEventKeys.INP$UI_ELEMENT$XPATH]?: string[];
146
+ [RUMPageSummaryEventKeys.INP$UI_ELEMENT$TAG_NAME]?: string;
147
+ }
148
+ /**
149
+ * @ignore
150
+ * @inline
151
+ */
152
+ export type FCPPaintMetricStatus = PaintMetricStatus.BACKGROUNDED | PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
153
+ /**
154
+ * @category Lifecycle & Navigation
155
+ */
156
+ export interface FCPMetric {
157
+ [RUMPageSummaryEventKeys.FCP$STATUS]: FCPPaintMetricStatus;
158
+ [RUMPageSummaryEventKeys.FCP$LOADING_STATE]?: LoadingState;
159
+ [RUMPageSummaryEventKeys.FCP$VALUE]?: number;
160
+ }
161
+ /**
162
+ * @inline
163
+ * @ignore
164
+ */
165
+ export type CLSPaintMetricStatus = PaintMetricStatus.BACKGROUNDED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
166
+ /**
167
+ * @category Lifecycle & Navigation
168
+ */
169
+ export interface CLSMetric {
170
+ [RUMPageSummaryEventKeys.CLS$STATUS]: CLSPaintMetricStatus;
171
+ [RUMPageSummaryEventKeys.CLS$UPDATE_COUNT]?: number;
172
+ [RUMPageSummaryEventKeys.CLS$LOADING_STATE]?: LoadingState;
173
+ [RUMPageSummaryEventKeys.CLS$VALUE]?: number;
174
+ [RUMPageSummaryEventKeys.CLS$UI_ELEMENT$XPATH]?: string[];
175
+ [RUMPageSummaryEventKeys.CLS$UI_ELEMENT$TAG_NAME]?: string;
176
+ [RUMPageSummaryEventKeys.CLS$UI_ELEMENT$SHIFT_TIME]?: number;
177
+ [RUMPageSummaryEventKeys.CLS$UI_ELEMENT$SHIFT_VALUE]?: number;
178
+ }
179
+ /**
180
+ * @ignore
181
+ * @inline
182
+ */
183
+ export type FPPaintMetricStatus = PaintMetricStatus.BACKGROUNDED | PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
184
+ /**
185
+ * @category Lifecycle & Navigation
186
+ */
187
+ export interface FPMetric {
188
+ [RUMPageSummaryEventKeys.FP$STATUS]: FPPaintMetricStatus;
189
+ [RUMPageSummaryEventKeys.FP$LOADING_STATE]?: LoadingState;
190
+ [RUMPageSummaryEventKeys.FP$VALUE]?: number;
191
+ }
192
+ export type TTFBMetricStatus = PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.REPORTED;
193
+ /**
194
+ * @category Lifecycle & Navigation
195
+ */
196
+ export interface TTFBMetric {
197
+ [RUMPageSummaryEventKeys.TTFB$STATUS]: TTFBMetricStatus;
198
+ [RUMPageSummaryEventKeys.TTFB$VALUE]?: number;
199
+ [RUMPageSummaryEventKeys.TTFB$WAITING_DURATION]?: number;
200
+ [RUMPageSummaryEventKeys.TTFB$CACHE_DURATION]?: number;
201
+ [RUMPageSummaryEventKeys.TTFB$DNS_DURATION]?: number;
202
+ [RUMPageSummaryEventKeys.TTFB$CONNECTION_DURATION]?: number;
203
+ [RUMPageSummaryEventKeys.TTFB$REQUEST_DURATION]?: number;
204
+ }
205
+ export type LongTaskMetricStatus = PaintMetricStatus.NOT_REPORTED | PaintMetricStatus.NOT_SUPPORTED | PaintMetricStatus.REPORTED;
206
+ export interface SlowLongTaskOccurrence {
207
+ duration: number;
208
+ start_time: number;
209
+ }
210
+ /**
211
+ * @category Lifecycle & Navigation
212
+ */
213
+ export interface LongTaskMetric {
214
+ [RUMPageSummaryEventKeys.LONG_TASK$STATUS]: LongTaskMetricStatus;
215
+ [RUMPageSummaryEventKeys.LONG_TASK$SELF$COUNT]?: number;
216
+ [RUMPageSummaryEventKeys.LONG_TASK$SELF$AVG_DURATION]?: number;
217
+ [RUMPageSummaryEventKeys.LONG_TASK$SELF$SLOWEST_OCCURRENCES]?: SlowLongTaskOccurrence[];
218
+ [RUMPageSummaryEventKeys.LONG_TASK$ALL$COUNT]?: number;
219
+ [RUMPageSummaryEventKeys.LONG_TASK$ALL$AVG_DURATION]?: number;
220
+ [RUMPageSummaryEventKeys.LONG_TASK$ALL$SLOWEST_OCCURRENCES]?: SlowLongTaskOccurrence[];
221
+ }
222
+ /**
223
+ * @category Lifecycle & Navigation
224
+ */
225
+ export interface PerformanceSummaryFields {
226
+ [RUMPageSummaryEventKeys.PERFORMANCE$ACTIVATION_START]?: number;
227
+ }
228
+ /**
229
+ * @category Lifecycle & Navigation
230
+ */
231
+ export interface ErrorCountSummaryFields {
232
+ [RUMPageSummaryEventKeys.ERROR$HTTP_4XX_COUNT]?: number;
233
+ [RUMPageSummaryEventKeys.ERROR$HTTP_5XX_COUNT]?: number;
234
+ [RUMPageSummaryEventKeys.ERROR$HTTP_OTHER_COUNT]?: number;
235
+ [RUMPageSummaryEventKeys.ERROR$EXCEPTION_COUNT]?: number;
236
+ [RUMPageSummaryEventKeys.ERROR$DROPPED_EXCEPTION_COUNT]?: number;
237
+ [RUMPageSummaryEventKeys.ERROR$CSP_VIOLATION_COUNT]?: number;
238
+ }
239
+ export interface BackForegroundSummaryFields {
240
+ [RUMPageSummaryEventKeys.PAGE$FOREGROUND_TIME]?: number;
241
+ [RUMPageSummaryEventKeys.PAGE$BACKGROUND_TIME]?: number;
242
+ [RUMPageSummaryEventKeys.VIEW$FOREGROUND_TIME]?: number;
243
+ [RUMPageSummaryEventKeys.VIEW$BACKGROUND_TIME]?: number;
244
+ }
245
+ /**
246
+ * @ignore
247
+ */
248
+ export declare const enum RUMPageSummaryEventKeys {
249
+ PERFORMANCE$TIME_ORIGIN = "performance.time_origin",
250
+ PERFORMANCE$ACTIVATION_START = "performance.activation_start",
251
+ ERROR$HTTP_4XX_COUNT = "error.http_4xx_count",
252
+ ERROR$HTTP_5XX_COUNT = "error.http_5xx_count",
253
+ ERROR$HTTP_OTHER_COUNT = "error.http_other_count",
254
+ ERROR$EXCEPTION_COUNT = "error.exception_count",
255
+ ERROR$DROPPED_EXCEPTION_COUNT = "error.dropped_exception_count",
256
+ ERROR$CSP_VIOLATION_COUNT = "error.csp_violation_count",
257
+ PAGE$FOREGROUND_TIME = "page.foreground_time",
258
+ PAGE$BACKGROUND_TIME = "page.background_time",
259
+ PAGE$PRERENDER_TIME = "page.prerender_time",
260
+ VIEW$FOREGROUND_TIME = "view.foreground_time",
261
+ VIEW$BACKGROUND_TIME = "view.background_time",
262
+ VIEW$PRERENDER_TIME = "view.prerender_time",
263
+ VIEW$SEQUENCE_NUMBER = "view.sequence_number",
264
+ FID$STATUS = "fid.status",
265
+ FID$LOADING_STATE = "fid.loading_state",
266
+ FID$START_TIME = "fid.start_time",
267
+ FID$DURATION = "fid.duration",
268
+ FID$NAME = "fid.name",
269
+ FID$PROCESSING_START = "fid.processing_start",
270
+ FID$PROCESSING_END = "fid.processing_end",
271
+ FID$CANCELABLE = "fid.cancelable",
272
+ FID$UI_ELEMENT$XPATH = "fid.ui_element.xpath",
273
+ FID$UI_ELEMENT$TAG_NAME = "fid.ui_element.tag_name",
274
+ LCP$STATUS = "lcp.status",
275
+ LCP$UPDATE_COUNT = "lcp.update_count",
276
+ LCP$START_TIME = "lcp.start_time",
277
+ LCP$URL = "lcp.url",
278
+ LCP$LOAD_TIME = "lcp.load_time",
279
+ LCP$RENDER_TIME = "lcp.render_time",
280
+ LCP$SIZE = "lcp.size",
281
+ LCP$ID = "lcp.id",
282
+ LCP$UI_ELEMENT$XPATH = "lcp.ui_element.xpath",
283
+ LCP$UI_ELEMENT$TAG_NAME = "lcp.ui_element.tag_name",
284
+ LCP$UI_ELEMENT$RENDER_DELAY = "lcp.ui_element.render_delay",
285
+ LCP$RESOURCE$LOAD_DELAY = "lcp.resource.load_delay",
286
+ LCP$RESOURCE$LOAD_DURATION = "lcp.resource.load_duration",
287
+ INP$STATUS = "inp.status",
288
+ INP$UPDATE_COUNT = "inp.update_count",
289
+ INP$INTERACTION_COUNT = "inp.interaction_count",
290
+ INP$LOADING_STATE = "inp.loading_state",
291
+ INP$START_TIME = "inp.start_time",
292
+ INP$DURATION = "inp.duration",
293
+ INP$NAME = "inp.name",
294
+ INP$PROCESSING_START = "inp.processing_start",
295
+ INP$PROCESSING_END = "inp.processing_end",
296
+ INP$CANCELABLE = "inp.cancelable",
297
+ INP$UI_ELEMENT$XPATH = "inp.ui_element.xpath",
298
+ INP$UI_ELEMENT$TAG_NAME = "inp.ui_element.tag_name",
299
+ FCP$STATUS = "fcp.status",
300
+ FCP$LOADING_STATE = "fcp.loading_state",
301
+ FCP$VALUE = "fcp.value",
302
+ CLS$STATUS = "cls.status",
303
+ CLS$UPDATE_COUNT = "cls.update_count",
304
+ CLS$LOADING_STATE = "cls.loading_state",
305
+ CLS$VALUE = "cls.value",
306
+ CLS$UI_ELEMENT$XPATH = "cls.ui_element.xpath",
307
+ CLS$UI_ELEMENT$TAG_NAME = "cls.ui_element.tag_name",
308
+ CLS$UI_ELEMENT$SHIFT_TIME = "cls.ui_element.shift_time",
309
+ CLS$UI_ELEMENT$SHIFT_VALUE = "cls.ui_element.shift_value",
310
+ FP$STATUS = "fp.status",
311
+ FP$LOADING_STATE = "fp.loading_state",
312
+ FP$VALUE = "fp.value",
313
+ TTFB$STATUS = "ttfb.status",
314
+ TTFB$VALUE = "ttfb.value",
315
+ TTFB$WAITING_DURATION = "ttfb.waiting_duration",
316
+ TTFB$CACHE_DURATION = "ttfb.cache_duration",
317
+ TTFB$DNS_DURATION = "ttfb.dns_duration",
318
+ TTFB$CONNECTION_DURATION = "ttfb.connection_duration",
319
+ TTFB$REQUEST_DURATION = "ttfb.request_duration",
320
+ LONG_TASK$STATUS = "long_task.status",
321
+ LONG_TASK$SELF$COUNT = "long_task.self.count",
322
+ LONG_TASK$SELF$AVG_DURATION = "long_task.self.avg_duration",
323
+ LONG_TASK$SELF$SLOWEST_OCCURRENCES = "long_task.self.slowest_occurrences",
324
+ LONG_TASK$ALL$COUNT = "long_task.all.count",
325
+ LONG_TASK$ALL$AVG_DURATION = "long_task.all.avg_duration",
326
+ LONG_TASK$ALL$SLOWEST_OCCURRENCES = "long_task.all.slowest_occurrences"
327
+ }
328
+ export declare const enum EntryNames {
329
+ FP = "first-paint",
330
+ FCP = "first-contentful-paint",
331
+ LCP = "largest-contentful-paint"
332
+ }
333
+ /**
334
+ * @category Lifecycle & Navigation
335
+ */
336
+ export declare const enum WebVitals {
337
+ /**
338
+ * {@link !PerformancePaintTiming} - {@link https://developer.mozilla.org/en-US/docs/Glossary/First_contentful_paint | FirstContentfulPaint}
339
+ * and {@link https://developer.mozilla.org/en-US/docs/Glossary/First_paint | FirstPaint}
340
+ */
341
+ PAINT = "paint",
342
+ /**
343
+ * {@link !LargestContentfulPaint} - Render time of the largest image or text block visible within the viewport, recorded
344
+ * from when the page first begins to load.
345
+ */
346
+ LCP = "largest-contentful-paint",
347
+ /**
348
+ * {@link !LayoutShift} - {@link https://developer.mozilla.org/en-US/docs/Glossary/CLS | CumulativeLayoutShift} measures to
349
+ * which extent users encounter unexpected layout shifts.
350
+ */
351
+ CLS = "layout-shift",
352
+ /**
353
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/First_input_delay | FirstInputDelay} measures the time
354
+ * from when a user first interacts with the page to the time when the browser is able to respond to that
355
+ * interaction.
356
+ */
357
+ FID = "first-input",
358
+ /**
359
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/Interaction_to_next_paint | InteractionToNextPaint}
360
+ * measures the time from when a user interacts with the page until a visual representation of a page reaction was
361
+ * rendered.
362
+ */
363
+ INP = "event",
364
+ /**
365
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/Interaction_to_next_paint | InteractionToNextPaint}
366
+ * measures the time from when a user interacts with the page until a visual representation of a page reaction was
367
+ * rendered.
368
+ */
369
+ LONG_TASK = "longtask"
370
+ }
@@ -0,0 +1,184 @@
1
+ // https://dt-rnd.atlassian.net/wiki/spaces/DEX/pages/352256002/RUM+Page+Summary+Event
2
+ /**
3
+ * @category Lifecycle & Navigation
4
+ */
5
+ export var PaintMetricStatus;
6
+ (function (PaintMetricStatus) {
7
+ /**
8
+ * The page was in background while the metric was collected.
9
+ */
10
+ PaintMetricStatus["BACKGROUNDED"] = "backgrounded";
11
+ /**
12
+ * The recorded metric yielded a value below the threshold of 40ms.
13
+ */
14
+ PaintMetricStatus["BELOW_THRESHOLD"] = "below_threshold";
15
+ /**
16
+ * The metric was not reported by the client.
17
+ */
18
+ PaintMetricStatus["NOT_REPORTED"] = "not_reported";
19
+ /**
20
+ * The client does not support this metric.
21
+ */
22
+ PaintMetricStatus["NOT_SUPPORTED"] = "not_supported";
23
+ /**
24
+ * The metric was properly recorded.
25
+ */
26
+ PaintMetricStatus["REPORTED"] = "reported";
27
+ })(PaintMetricStatus || (PaintMetricStatus = {}));
28
+ /**
29
+ * @category Lifecycle & Navigation
30
+ */
31
+ export var LoadingState;
32
+ (function (LoadingState) {
33
+ /**
34
+ * The page finished loading and the load event has been fired.
35
+ */
36
+ LoadingState["COMPLETE"] = "complete";
37
+ /**
38
+ * The dom content has been loaded, see {@link !PerformanceNavigationTiming.domContentLoadedEventEnd}.
39
+ */
40
+ LoadingState["DOM_CONTENT_LOADED"] = "dom_content_loaded";
41
+ /**
42
+ * The dom is interactive, see {@link !PerformanceNavigationTiming.domInteractive}.
43
+ */
44
+ LoadingState["DOM_INTERACTIVE"] = "dom_interactive";
45
+ /**
46
+ * The page is still loading.
47
+ */
48
+ LoadingState["LOADING"] = "loading";
49
+ })(LoadingState || (LoadingState = {}));
50
+ /**
51
+ * @ignore
52
+ */
53
+ /* eslint-disable typescript-sort-keys/string-enum -- metrics are grouped */
54
+ export var RUMPageSummaryEventKeys;
55
+ (function (RUMPageSummaryEventKeys) {
56
+ // Performance Fields
57
+ RUMPageSummaryEventKeys["PERFORMANCE$TIME_ORIGIN"] = "performance.time_origin";
58
+ RUMPageSummaryEventKeys["PERFORMANCE$ACTIVATION_START"] = "performance.activation_start";
59
+ // Errors
60
+ RUMPageSummaryEventKeys["ERROR$HTTP_4XX_COUNT"] = "error.http_4xx_count";
61
+ RUMPageSummaryEventKeys["ERROR$HTTP_5XX_COUNT"] = "error.http_5xx_count";
62
+ RUMPageSummaryEventKeys["ERROR$HTTP_OTHER_COUNT"] = "error.http_other_count";
63
+ RUMPageSummaryEventKeys["ERROR$EXCEPTION_COUNT"] = "error.exception_count";
64
+ RUMPageSummaryEventKeys["ERROR$DROPPED_EXCEPTION_COUNT"] = "error.dropped_exception_count";
65
+ RUMPageSummaryEventKeys["ERROR$CSP_VIOLATION_COUNT"] = "error.csp_violation_count";
66
+ // Page
67
+ RUMPageSummaryEventKeys["PAGE$FOREGROUND_TIME"] = "page.foreground_time";
68
+ RUMPageSummaryEventKeys["PAGE$BACKGROUND_TIME"] = "page.background_time";
69
+ RUMPageSummaryEventKeys["PAGE$PRERENDER_TIME"] = "page.prerender_time";
70
+ // View
71
+ RUMPageSummaryEventKeys["VIEW$FOREGROUND_TIME"] = "view.foreground_time";
72
+ RUMPageSummaryEventKeys["VIEW$BACKGROUND_TIME"] = "view.background_time";
73
+ RUMPageSummaryEventKeys["VIEW$PRERENDER_TIME"] = "view.prerender_time";
74
+ RUMPageSummaryEventKeys["VIEW$SEQUENCE_NUMBER"] = "view.sequence_number";
75
+ RUMPageSummaryEventKeys["FID$STATUS"] = "fid.status";
76
+ RUMPageSummaryEventKeys["FID$LOADING_STATE"] = "fid.loading_state";
77
+ RUMPageSummaryEventKeys["FID$START_TIME"] = "fid.start_time";
78
+ RUMPageSummaryEventKeys["FID$DURATION"] = "fid.duration";
79
+ RUMPageSummaryEventKeys["FID$NAME"] = "fid.name";
80
+ RUMPageSummaryEventKeys["FID$PROCESSING_START"] = "fid.processing_start";
81
+ RUMPageSummaryEventKeys["FID$PROCESSING_END"] = "fid.processing_end";
82
+ RUMPageSummaryEventKeys["FID$CANCELABLE"] = "fid.cancelable";
83
+ RUMPageSummaryEventKeys["FID$UI_ELEMENT$XPATH"] = "fid.ui_element.xpath";
84
+ RUMPageSummaryEventKeys["FID$UI_ELEMENT$TAG_NAME"] = "fid.ui_element.tag_name";
85
+ RUMPageSummaryEventKeys["LCP$STATUS"] = "lcp.status";
86
+ RUMPageSummaryEventKeys["LCP$UPDATE_COUNT"] = "lcp.update_count";
87
+ RUMPageSummaryEventKeys["LCP$START_TIME"] = "lcp.start_time";
88
+ RUMPageSummaryEventKeys["LCP$URL"] = "lcp.url";
89
+ RUMPageSummaryEventKeys["LCP$LOAD_TIME"] = "lcp.load_time";
90
+ RUMPageSummaryEventKeys["LCP$RENDER_TIME"] = "lcp.render_time";
91
+ RUMPageSummaryEventKeys["LCP$SIZE"] = "lcp.size";
92
+ RUMPageSummaryEventKeys["LCP$ID"] = "lcp.id";
93
+ RUMPageSummaryEventKeys["LCP$UI_ELEMENT$XPATH"] = "lcp.ui_element.xpath";
94
+ RUMPageSummaryEventKeys["LCP$UI_ELEMENT$TAG_NAME"] = "lcp.ui_element.tag_name";
95
+ RUMPageSummaryEventKeys["LCP$UI_ELEMENT$RENDER_DELAY"] = "lcp.ui_element.render_delay";
96
+ RUMPageSummaryEventKeys["LCP$RESOURCE$LOAD_DELAY"] = "lcp.resource.load_delay";
97
+ RUMPageSummaryEventKeys["LCP$RESOURCE$LOAD_DURATION"] = "lcp.resource.load_duration";
98
+ RUMPageSummaryEventKeys["INP$STATUS"] = "inp.status";
99
+ RUMPageSummaryEventKeys["INP$UPDATE_COUNT"] = "inp.update_count";
100
+ RUMPageSummaryEventKeys["INP$INTERACTION_COUNT"] = "inp.interaction_count";
101
+ RUMPageSummaryEventKeys["INP$LOADING_STATE"] = "inp.loading_state";
102
+ RUMPageSummaryEventKeys["INP$START_TIME"] = "inp.start_time";
103
+ RUMPageSummaryEventKeys["INP$DURATION"] = "inp.duration";
104
+ RUMPageSummaryEventKeys["INP$NAME"] = "inp.name";
105
+ RUMPageSummaryEventKeys["INP$PROCESSING_START"] = "inp.processing_start";
106
+ RUMPageSummaryEventKeys["INP$PROCESSING_END"] = "inp.processing_end";
107
+ RUMPageSummaryEventKeys["INP$CANCELABLE"] = "inp.cancelable";
108
+ RUMPageSummaryEventKeys["INP$UI_ELEMENT$XPATH"] = "inp.ui_element.xpath";
109
+ RUMPageSummaryEventKeys["INP$UI_ELEMENT$TAG_NAME"] = "inp.ui_element.tag_name";
110
+ RUMPageSummaryEventKeys["FCP$STATUS"] = "fcp.status";
111
+ RUMPageSummaryEventKeys["FCP$LOADING_STATE"] = "fcp.loading_state";
112
+ RUMPageSummaryEventKeys["FCP$VALUE"] = "fcp.value";
113
+ RUMPageSummaryEventKeys["CLS$STATUS"] = "cls.status";
114
+ RUMPageSummaryEventKeys["CLS$UPDATE_COUNT"] = "cls.update_count";
115
+ RUMPageSummaryEventKeys["CLS$LOADING_STATE"] = "cls.loading_state";
116
+ RUMPageSummaryEventKeys["CLS$VALUE"] = "cls.value";
117
+ RUMPageSummaryEventKeys["CLS$UI_ELEMENT$XPATH"] = "cls.ui_element.xpath";
118
+ RUMPageSummaryEventKeys["CLS$UI_ELEMENT$TAG_NAME"] = "cls.ui_element.tag_name";
119
+ RUMPageSummaryEventKeys["CLS$UI_ELEMENT$SHIFT_TIME"] = "cls.ui_element.shift_time";
120
+ RUMPageSummaryEventKeys["CLS$UI_ELEMENT$SHIFT_VALUE"] = "cls.ui_element.shift_value";
121
+ RUMPageSummaryEventKeys["FP$STATUS"] = "fp.status";
122
+ RUMPageSummaryEventKeys["FP$LOADING_STATE"] = "fp.loading_state";
123
+ RUMPageSummaryEventKeys["FP$VALUE"] = "fp.value";
124
+ RUMPageSummaryEventKeys["TTFB$STATUS"] = "ttfb.status";
125
+ RUMPageSummaryEventKeys["TTFB$VALUE"] = "ttfb.value";
126
+ RUMPageSummaryEventKeys["TTFB$WAITING_DURATION"] = "ttfb.waiting_duration";
127
+ RUMPageSummaryEventKeys["TTFB$CACHE_DURATION"] = "ttfb.cache_duration";
128
+ RUMPageSummaryEventKeys["TTFB$DNS_DURATION"] = "ttfb.dns_duration";
129
+ RUMPageSummaryEventKeys["TTFB$CONNECTION_DURATION"] = "ttfb.connection_duration";
130
+ RUMPageSummaryEventKeys["TTFB$REQUEST_DURATION"] = "ttfb.request_duration";
131
+ RUMPageSummaryEventKeys["LONG_TASK$STATUS"] = "long_task.status";
132
+ RUMPageSummaryEventKeys["LONG_TASK$SELF$COUNT"] = "long_task.self.count";
133
+ RUMPageSummaryEventKeys["LONG_TASK$SELF$AVG_DURATION"] = "long_task.self.avg_duration";
134
+ RUMPageSummaryEventKeys["LONG_TASK$SELF$SLOWEST_OCCURRENCES"] = "long_task.self.slowest_occurrences";
135
+ RUMPageSummaryEventKeys["LONG_TASK$ALL$COUNT"] = "long_task.all.count";
136
+ RUMPageSummaryEventKeys["LONG_TASK$ALL$AVG_DURATION"] = "long_task.all.avg_duration";
137
+ RUMPageSummaryEventKeys["LONG_TASK$ALL$SLOWEST_OCCURRENCES"] = "long_task.all.slowest_occurrences";
138
+ })(RUMPageSummaryEventKeys || (RUMPageSummaryEventKeys = {}));
139
+ export var EntryNames;
140
+ (function (EntryNames) {
141
+ EntryNames["FP"] = "first-paint";
142
+ EntryNames["FCP"] = "first-contentful-paint";
143
+ EntryNames["LCP"] = "largest-contentful-paint";
144
+ })(EntryNames || (EntryNames = {}));
145
+ /**
146
+ * @category Lifecycle & Navigation
147
+ */
148
+ export var WebVitals;
149
+ (function (WebVitals) {
150
+ /**
151
+ * {@link !PerformancePaintTiming} - {@link https://developer.mozilla.org/en-US/docs/Glossary/First_contentful_paint | FirstContentfulPaint}
152
+ * and {@link https://developer.mozilla.org/en-US/docs/Glossary/First_paint | FirstPaint}
153
+ */
154
+ WebVitals["PAINT"] = "paint";
155
+ /**
156
+ * {@link !LargestContentfulPaint} - Render time of the largest image or text block visible within the viewport, recorded
157
+ * from when the page first begins to load.
158
+ */
159
+ WebVitals["LCP"] = "largest-contentful-paint";
160
+ /**
161
+ * {@link !LayoutShift} - {@link https://developer.mozilla.org/en-US/docs/Glossary/CLS | CumulativeLayoutShift} measures to
162
+ * which extent users encounter unexpected layout shifts.
163
+ */
164
+ WebVitals["CLS"] = "layout-shift";
165
+ /**
166
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/First_input_delay | FirstInputDelay} measures the time
167
+ * from when a user first interacts with the page to the time when the browser is able to respond to that
168
+ * interaction.
169
+ */
170
+ WebVitals["FID"] = "first-input";
171
+ /**
172
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/Interaction_to_next_paint | InteractionToNextPaint}
173
+ * measures the time from when a user interacts with the page until a visual representation of a page reaction was
174
+ * rendered.
175
+ */
176
+ WebVitals["INP"] = "event";
177
+ /**
178
+ * {@link https://developer.mozilla.org/en-US/docs/Glossary/Interaction_to_next_paint | InteractionToNextPaint}
179
+ * measures the time from when a user interacts with the page until a visual representation of a page reaction was
180
+ * rendered.
181
+ */
182
+ WebVitals["LONG_TASK"] = "longtask";
183
+ })(WebVitals || (WebVitals = {}));
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVtLXBhZ2Utc3VtbWFyeS1ldmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NvdXJjZS90eXBlcy9ydW0tZXZlbnRzL3J1bS1wYWdlLXN1bW1hcnktZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0ZBQXNGO0FBY3RGOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQWtCLGlCQXFCakI7QUFyQkQsV0FBa0IsaUJBQWlCO0lBQy9COztPQUVHO0lBQ0gsa0RBQTZCLENBQUE7SUFDN0I7O09BRUc7SUFDSCx3REFBbUMsQ0FBQTtJQUNuQzs7T0FFRztJQUNILGtEQUE2QixDQUFBO0lBQzdCOztPQUVHO0lBQ0gsb0RBQStCLENBQUE7SUFDL0I7O09BRUc7SUFDSCwwQ0FBcUIsQ0FBQTtBQUN6QixDQUFDLEVBckJpQixpQkFBaUIsS0FBakIsaUJBQWlCLFFBcUJsQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQWtCLFlBaUJqQjtBQWpCRCxXQUFrQixZQUFZO0lBQzFCOztPQUVHO0lBQ0gscUNBQXFCLENBQUE7SUFDckI7O09BRUc7SUFDSCx5REFBeUMsQ0FBQTtJQUN6Qzs7T0FFRztJQUNILG1EQUFtQyxDQUFBO0lBQ25DOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQWpCaUIsWUFBWSxLQUFaLFlBQVksUUFpQjdCO0FBb1JEOztHQUVHO0FBQ0gsNEVBQTRFO0FBQzVFLE1BQU0sQ0FBTixJQUFrQix1QkE4RmpCO0FBOUZELFdBQWtCLHVCQUF1QjtJQUNyQyxxQkFBcUI7SUFDckIsOEVBQW1ELENBQUE7SUFDbkQsd0ZBQTZELENBQUE7SUFFN0QsU0FBUztJQUNULHdFQUE2QyxDQUFBO0lBQzdDLHdFQUE2QyxDQUFBO0lBQzdDLDRFQUFpRCxDQUFBO0lBQ2pELDBFQUErQyxDQUFBO0lBQy9DLDBGQUErRCxDQUFBO0lBQy9ELGtGQUF1RCxDQUFBO0lBRXZELE9BQU87SUFDUCx3RUFBNkMsQ0FBQTtJQUM3Qyx3RUFBNkMsQ0FBQTtJQUM3QyxzRUFBMkMsQ0FBQTtJQUUzQyxPQUFPO0lBQ1Asd0VBQTZDLENBQUE7SUFDN0Msd0VBQTZDLENBQUE7SUFDN0Msc0VBQTJDLENBQUE7SUFDM0Msd0VBQTZDLENBQUE7SUFFN0Msb0RBQXlCLENBQUE7SUFDekIsa0VBQXVDLENBQUE7SUFDdkMsNERBQWlDLENBQUE7SUFDakMsd0RBQTZCLENBQUE7SUFDN0IsZ0RBQXFCLENBQUE7SUFDckIsd0VBQTZDLENBQUE7SUFDN0Msb0VBQXlDLENBQUE7SUFDekMsNERBQWlDLENBQUE7SUFDakMsd0VBQTZDLENBQUE7SUFDN0MsOEVBQW1ELENBQUE7SUFFbkQsb0RBQXlCLENBQUE7SUFDekIsZ0VBQXFDLENBQUE7SUFDckMsNERBQWlDLENBQUE7SUFDakMsOENBQW1CLENBQUE7SUFDbkIsMERBQStCLENBQUE7SUFDL0IsOERBQW1DLENBQUE7SUFDbkMsZ0RBQXFCLENBQUE7SUFDckIsNENBQWlCLENBQUE7SUFDakIsd0VBQTZDLENBQUE7SUFDN0MsOEVBQW1ELENBQUE7SUFDbkQsc0ZBQTJELENBQUE7SUFDM0QsOEVBQW1ELENBQUE7SUFDbkQsb0ZBQXlELENBQUE7SUFFekQsb0RBQXlCLENBQUE7SUFDekIsZ0VBQXFDLENBQUE7SUFDckMsMEVBQStDLENBQUE7SUFDL0Msa0VBQXVDLENBQUE7SUFDdkMsNERBQWlDLENBQUE7SUFDakMsd0RBQTZCLENBQUE7SUFDN0IsZ0RBQXFCLENBQUE7SUFDckIsd0VBQTZDLENBQUE7SUFDN0Msb0VBQXlDLENBQUE7SUFDekMsNERBQWlDLENBQUE7SUFDakMsd0VBQTZDLENBQUE7SUFDN0MsOEVBQW1ELENBQUE7SUFFbkQsb0RBQXlCLENBQUE7SUFDekIsa0VBQXVDLENBQUE7SUFDdkMsa0RBQXVCLENBQUE7SUFFdkIsb0RBQXlCLENBQUE7SUFDekIsZ0VBQXFDLENBQUE7SUFDckMsa0VBQXVDLENBQUE7SUFDdkMsa0RBQXVCLENBQUE7SUFDdkIsd0VBQTZDLENBQUE7SUFDN0MsOEVBQW1ELENBQUE7SUFDbkQsa0ZBQXVELENBQUE7SUFDdkQsb0ZBQXlELENBQUE7SUFFekQsa0RBQXVCLENBQUE7SUFDdkIsZ0VBQXFDLENBQUE7SUFDckMsZ0RBQXFCLENBQUE7SUFFckIsc0RBQTJCLENBQUE7SUFDM0Isb0RBQXlCLENBQUE7SUFDekIsMEVBQStDLENBQUE7SUFDL0Msc0VBQTJDLENBQUE7SUFDM0Msa0VBQXVDLENBQUE7SUFDdkMsZ0ZBQXFELENBQUE7SUFDckQsMEVBQStDLENBQUE7SUFFL0MsZ0VBQXFDLENBQUE7SUFDckMsd0VBQTZDLENBQUE7SUFDN0Msc0ZBQTJELENBQUE7SUFDM0Qsb0dBQXlFLENBQUE7SUFDekUsc0VBQTJDLENBQUE7SUFDM0Msb0ZBQXlELENBQUE7SUFDekQsa0dBQXVFLENBQUE7QUFDM0UsQ0FBQyxFQTlGaUIsdUJBQXVCLEtBQXZCLHVCQUF1QixRQThGeEM7QUFFRCxNQUFNLENBQU4sSUFBa0IsVUFJakI7QUFKRCxXQUFrQixVQUFVO0lBQ3hCLGdDQUFrQixDQUFBO0lBQ2xCLDRDQUE4QixDQUFBO0lBQzlCLDhDQUFnQyxDQUFBO0FBQ3BDLENBQUMsRUFKaUIsVUFBVSxLQUFWLFVBQVUsUUFJM0I7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFrQixTQWtDakI7QUFsQ0QsV0FBa0IsU0FBUztJQUN2Qjs7O09BR0c7SUFDSCw0QkFBZSxDQUFBO0lBQ2Y7OztPQUdHO0lBQ0gsNkNBQWdDLENBQUE7SUFDaEM7OztPQUdHO0lBQ0gsaUNBQW9CLENBQUE7SUFDcEI7Ozs7T0FJRztJQUNILGdDQUFtQixDQUFBO0lBQ25COzs7O09BSUc7SUFDSCwwQkFBYSxDQUFBO0lBQ2I7Ozs7T0FJRztJQUNILG1DQUFzQixDQUFBO0FBQzFCLENBQUMsRUFsQ2lCLFNBQVMsS0FBVCxTQUFTLFFBa0MxQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZHQtcm5kLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvREVYL3BhZ2VzLzM1MjI1NjAwMi9SVU0rUGFnZStTdW1tYXJ5K0V2ZW50XG5cbmltcG9ydCB0eXBlIHtcbiAgICBDaGFyYWN0ZXJpc3RpY3NGaWVsZHNLZXlzLFxuICAgIEdlbmVyYWxSdW1FdmVudEZpZWxkcyxcbiAgICBHZW5lcmFsUnVtRXZlbnRGaWVsZHNLZXlzXG59IGZyb20gXCIuL3NoYXJlZC1uYW1lc3BhY2VzLWFuZC1maWVsZHMvZ2VuZXJhbC1ydW0tZXZlbnQtZmllbGRzLmpzXCI7XG5pbXBvcnQgdHlwZSB7XG4gICAgZXZlbnRDb250ZXh0U3ltYm9sLFxuICAgIFJVTVN1bW1hcnlFdmVudENvbnRleHRcbn0gZnJvbSBcIi4vZXZlbnQtY29udGV4dC9ldmVudC1jb250ZXh0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IE5hdmlnYXRpb25GaWVsZHMgfSBmcm9tIFwiLi9zaGFyZWQtbmFtZXNwYWNlcy1hbmQtZmllbGRzL25hdmlnYXRpb24tZmllbGRzLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFNDSEVNQV9WRVJTSU9OIH0gZnJvbSBcIi4vc2NoZW1hLXZlcnNpb25zLmpzXCI7XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGNvbnN0IGVudW0gUGFpbnRNZXRyaWNTdGF0dXMge1xuICAgIC8qKlxuICAgICAqIFRoZSBwYWdlIHdhcyBpbiBiYWNrZ3JvdW5kIHdoaWxlIHRoZSBtZXRyaWMgd2FzIGNvbGxlY3RlZC5cbiAgICAgKi9cbiAgICBCQUNLR1JPVU5ERUQgPSBcImJhY2tncm91bmRlZFwiLFxuICAgIC8qKlxuICAgICAqIFRoZSByZWNvcmRlZCBtZXRyaWMgeWllbGRlZCBhIHZhbHVlIGJlbG93IHRoZSB0aHJlc2hvbGQgb2YgNDBtcy5cbiAgICAgKi9cbiAgICBCRUxPV19USFJFU0hPTEQgPSBcImJlbG93X3RocmVzaG9sZFwiLFxuICAgIC8qKlxuICAgICAqIFRoZSBtZXRyaWMgd2FzIG5vdCByZXBvcnRlZCBieSB0aGUgY2xpZW50LlxuICAgICAqL1xuICAgIE5PVF9SRVBPUlRFRCA9IFwibm90X3JlcG9ydGVkXCIsXG4gICAgLyoqXG4gICAgICogVGhlIGNsaWVudCBkb2VzIG5vdCBzdXBwb3J0IHRoaXMgbWV0cmljLlxuICAgICAqL1xuICAgIE5PVF9TVVBQT1JURUQgPSBcIm5vdF9zdXBwb3J0ZWRcIixcbiAgICAvKipcbiAgICAgKiBUaGUgbWV0cmljIHdhcyBwcm9wZXJseSByZWNvcmRlZC5cbiAgICAgKi9cbiAgICBSRVBPUlRFRCA9IFwicmVwb3J0ZWRcIlxufVxuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIExvYWRpbmdTdGF0ZSB7XG4gICAgLyoqXG4gICAgICogVGhlIHBhZ2UgZmluaXNoZWQgbG9hZGluZyBhbmQgdGhlIGxvYWQgZXZlbnQgaGFzIGJlZW4gZmlyZWQuXG4gICAgICovXG4gICAgQ09NUExFVEUgPSBcImNvbXBsZXRlXCIsXG4gICAgLyoqXG4gICAgICogVGhlIGRvbSBjb250ZW50IGhhcyBiZWVuIGxvYWRlZCwgc2VlIHtAbGluayAhUGVyZm9ybWFuY2VOYXZpZ2F0aW9uVGltaW5nLmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZH0uXG4gICAgICovXG4gICAgRE9NX0NPTlRFTlRfTE9BREVEID0gXCJkb21fY29udGVudF9sb2FkZWRcIixcbiAgICAvKipcbiAgICAgKiBUaGUgZG9tIGlzIGludGVyYWN0aXZlLCBzZWUge0BsaW5rICFQZXJmb3JtYW5jZU5hdmlnYXRpb25UaW1pbmcuZG9tSW50ZXJhY3RpdmV9LlxuICAgICAqL1xuICAgIERPTV9JTlRFUkFDVElWRSA9IFwiZG9tX2ludGVyYWN0aXZlXCIsXG4gICAgLyoqXG4gICAgICogVGhlIHBhZ2UgaXMgc3RpbGwgbG9hZGluZy5cbiAgICAgKi9cbiAgICBMT0FESU5HID0gXCJsb2FkaW5nXCJcbn1cblxuZXhwb3J0IHR5cGUgUlVNU3VtbWFyeUV2ZW50VHJhY2tlclBhcnQgPVxuICAgIEJhY2tGb3JlZ3JvdW5kU3VtbWFyeUZpZWxkc1xuICAgIHwgQ0xTTWV0cmljXG4gICAgfCBFcnJvckNvdW50U3VtbWFyeUZpZWxkc1xuICAgIHwgRkNQTWV0cmljXG4gICAgfCBGSURNZXRyaWNcbiAgICB8IEZQTWV0cmljXG4gICAgfCBJTlBNZXRyaWNcbiAgICB8IExDUE1ldHJpY1xuICAgIHwgTG9uZ1Rhc2tNZXRyaWNcbiAgICB8IFBlcmZvcm1hbmNlU3VtbWFyeUZpZWxkc1xuICAgIHwgVFRGQk1ldHJpYztcblxuLyoqXG4gKiBAY2F0ZWdvcnkgTGlmZWN5Y2xlICYgTmF2aWdhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJVTVN1bW1hcnlFdmVudEJhc2UgZXh0ZW5kc1xuICAgIEdlbmVyYWxSdW1FdmVudEZpZWxkcyxcbiAgICBOYXZpZ2F0aW9uRmllbGRzLFxuICAgIExDUE1ldHJpYyxcbiAgICBGSURNZXRyaWMsXG4gICAgSU5QTWV0cmljLFxuICAgIEZDUE1ldHJpYyxcbiAgICBDTFNNZXRyaWMsXG4gICAgRlBNZXRyaWMsXG4gICAgVFRGQk1ldHJpYyxcbiAgICBMb25nVGFza01ldHJpYyxcbiAgICBFcnJvckNvdW50U3VtbWFyeUZpZWxkcyxcbiAgICBQZXJmb3JtYW5jZVN1bW1hcnlGaWVsZHMge1xuXG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlBFUkZPUk1BTkNFJFRJTUVfT1JJR0lOXTogbnVtYmVyO1xuICAgIFtHZW5lcmFsUnVtRXZlbnRGaWVsZHNLZXlzLkRUJFJVTSRTQ0hFTUFfVkVSU0lPTl06IHR5cGVvZiBTQ0hFTUFfVkVSU0lPTjtcblxuICAgIFtldmVudENvbnRleHRTeW1ib2xdOiBSVU1TdW1tYXJ5RXZlbnRDb250ZXh0O1xufVxuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUlVNUGFnZVN1bW1hcnlFdmVudCBleHRlbmRzIFJVTVN1bW1hcnlFdmVudEJhc2Uge1xuICAgIFtDaGFyYWN0ZXJpc3RpY3NGaWVsZHNLZXlzLkNIQVJBQ1RFUklTVElDUyRIQVNfUEFHRV9TVU1NQVJZXTogdHJ1ZTtcblxuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5QQUdFJEZPUkVHUk9VTkRfVElNRV06IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuUEFHRSRCQUNLR1JPVU5EX1RJTUVdOiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlBBR0UkUFJFUkVOREVSX1RJTUVdOiBudW1iZXI7XG59XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSVU1WaWV3U3VtbWFyeUV2ZW50IGV4dGVuZHMgUlVNU3VtbWFyeUV2ZW50QmFzZSB7XG4gICAgW0NoYXJhY3RlcmlzdGljc0ZpZWxkc0tleXMuQ0hBUkFDVEVSSVNUSUNTJEhBU19WSUVXX1NVTU1BUlldOiB0cnVlO1xuXG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlZJRVckRk9SRUdST1VORF9USU1FXTogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5WSUVXJEJBQ0tHUk9VTkRfVElNRV06IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuVklFVyRQUkVSRU5ERVJfVElNRV06IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuVklFVyRTRVFVRU5DRV9OVU1CRVJdOiBudW1iZXI7XG59XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IHR5cGUgUlVNU3VtbWFyeUV2ZW50ID0gUlVNUGFnZVN1bW1hcnlFdmVudCB8IFJVTVZpZXdTdW1tYXJ5RXZlbnQ7XG5cbi8qKlxuICogQGlnbm9yZVxuICogQGlubGluZVxuICovXG5leHBvcnQgdHlwZSBMQ1BQYWludE1ldHJpY1N0YXR1cyA9XG4gICAgUGFpbnRNZXRyaWNTdGF0dXMuQkFDS0dST1VOREVEXG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5OT1RfUkVQT1JURURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLk5PVF9TVVBQT1JURURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLlJFUE9SVEVEO1xuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTENQTWV0cmljIHtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJFNUQVRVU106IExDUFBhaW50TWV0cmljU3RhdHVzO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5MQ1AkVVBEQVRFX0NPVU5UXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJFNUQVJUX1RJTUVdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5MQ1AkVVJMXT86IHN0cmluZztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJExPQURfVElNRV0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkxDUCRSRU5ERVJfVElNRV0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkxDUCRTSVpFXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJElEXT86IHN0cmluZztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJFVJX0VMRU1FTlQkWFBBVEhdPzogc3RyaW5nW107XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkxDUCRVSV9FTEVNRU5UJFRBR19OQU1FXT86IHN0cmluZztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJFVJX0VMRU1FTlQkUkVOREVSX0RFTEFZXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTENQJFJFU09VUkNFJExPQURfREVMQVldPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5MQ1AkUkVTT1VSQ0UkTE9BRF9EVVJBVElPTl0/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQGlubGluZVxuICovXG5leHBvcnQgdHlwZSBGSURQYWludE1ldHJpY1N0YXR1cyA9XG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5OT1RfUkVQT1JURURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLk5PVF9TVVBQT1JURURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLlJFUE9SVEVEO1xuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRklETWV0cmljIHtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRklEJFNUQVRVU106IEZJRFBhaW50TWV0cmljU3RhdHVzO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5GSUQkTE9BRElOR19TVEFURV0/OiBMb2FkaW5nU3RhdGU7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZJRCRTVEFSVF9USU1FXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRklEJERVUkFUSU9OXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRklEJE5BTUVdPzogc3RyaW5nO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5GSUQkUFJPQ0VTU0lOR19TVEFSVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZJRCRQUk9DRVNTSU5HX0VORF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZJRCRDQU5DRUxBQkxFXT86IGJvb2xlYW47XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZJRCRVSV9FTEVNRU5UJFhQQVRIXT86IHN0cmluZ1tdO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5GSUQkVUlfRUxFTUVOVCRUQUdfTkFNRV0/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQGlubGluZVxuICovXG5leHBvcnQgdHlwZSBJTlBQYWludE1ldHJpY1N0YXR1cyA9XG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5CRUxPV19USFJFU0hPTERcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLk5PVF9SRVBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuTk9UX1NVUFBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuUkVQT1JURUQ7XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTlBNZXRyaWMge1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5JTlAkU1RBVFVTXTogSU5QUGFpbnRNZXRyaWNTdGF0dXM7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLklOUCRVUERBVEVfQ09VTlRdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5JTlAkSU5URVJBQ1RJT05fQ09VTlRdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5JTlAkTE9BRElOR19TVEFURV0/OiBMb2FkaW5nU3RhdGU7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLklOUCRTVEFSVF9USU1FXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuSU5QJERVUkFUSU9OXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuSU5QJE5BTUVdPzogc3RyaW5nO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5JTlAkUFJPQ0VTU0lOR19TVEFSVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLklOUCRQUk9DRVNTSU5HX0VORF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLklOUCRDQU5DRUxBQkxFXT86IGJvb2xlYW47XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLklOUCRVSV9FTEVNRU5UJFhQQVRIXT86IHN0cmluZ1tdO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5JTlAkVUlfRUxFTUVOVCRUQUdfTkFNRV0/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQGlubGluZVxuICovXG5leHBvcnQgdHlwZSBGQ1BQYWludE1ldHJpY1N0YXR1cyA9XG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5CQUNLR1JPVU5ERURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLk5PVF9SRVBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuTk9UX1NVUFBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuUkVQT1JURUQ7XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGQ1BNZXRyaWMge1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5GQ1AkU1RBVFVTXTogRkNQUGFpbnRNZXRyaWNTdGF0dXM7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZDUCRMT0FESU5HX1NUQVRFXT86IExvYWRpbmdTdGF0ZTtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRkNQJFZBTFVFXT86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAaW5saW5lXG4gKiBAaWdub3JlXG4gKi9cbmV4cG9ydCB0eXBlIENMU1BhaW50TWV0cmljU3RhdHVzID1cbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLkJBQ0tHUk9VTkRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuTk9UX1NVUFBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuUkVQT1JURUQ7XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDTFNNZXRyaWMge1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5DTFMkU1RBVFVTXTogQ0xTUGFpbnRNZXRyaWNTdGF0dXM7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkNMUyRVUERBVEVfQ09VTlRdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5DTFMkTE9BRElOR19TVEFURV0/OiBMb2FkaW5nU3RhdGU7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkNMUyRWQUxVRV0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkNMUyRVSV9FTEVNRU5UJFhQQVRIXT86IHN0cmluZ1tdO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5DTFMkVUlfRUxFTUVOVCRUQUdfTkFNRV0/OiBzdHJpbmc7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkNMUyRVSV9FTEVNRU5UJFNISUZUX1RJTUVdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5DTFMkVUlfRUxFTUVOVCRTSElGVF9WQUxVRV0/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQGlnbm9yZVxuICogQGlubGluZVxuICovXG5leHBvcnQgdHlwZSBGUFBhaW50TWV0cmljU3RhdHVzID1cbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLkJBQ0tHUk9VTkRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuTk9UX1JFUE9SVEVEXG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5OT1RfU1VQUE9SVEVEXG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5SRVBPUlRFRDtcblxuLyoqXG4gKiBAY2F0ZWdvcnkgTGlmZWN5Y2xlICYgTmF2aWdhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZQTWV0cmljIHtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRlAkU1RBVFVTXTogRlBQYWludE1ldHJpY1N0YXR1cztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRlAkTE9BRElOR19TVEFURV0/OiBMb2FkaW5nU3RhdGU7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkZQJFZBTFVFXT86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgVFRGQk1ldHJpY1N0YXR1cyA9XG4gICAgfCBQYWludE1ldHJpY1N0YXR1cy5OT1RfUkVQT1JURURcbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLlJFUE9SVEVEO1xuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVFRGQk1ldHJpYyB7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlRURkIkU1RBVFVTXTogVFRGQk1ldHJpY1N0YXR1cztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuVFRGQiRWQUxVRV0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlRURkIkV0FJVElOR19EVVJBVElPTl0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlRURkIkQ0FDSEVfRFVSQVRJT05dPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5UVEZCJEROU19EVVJBVElPTl0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlRURkIkQ09OTkVDVElPTl9EVVJBVElPTl0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlRURkIkUkVRVUVTVF9EVVJBVElPTl0/OiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIExvbmdUYXNrTWV0cmljU3RhdHVzID1cbiAgICB8IFBhaW50TWV0cmljU3RhdHVzLk5PVF9SRVBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuTk9UX1NVUFBPUlRFRFxuICAgIHwgUGFpbnRNZXRyaWNTdGF0dXMuUkVQT1JURUQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2xvd0xvbmdUYXNrT2NjdXJyZW5jZSB7XG4gICAgZHVyYXRpb246IG51bWJlcjtcbiAgICBzdGFydF90aW1lOiBudW1iZXI7XG59XG5cbi8qKlxuICogQGNhdGVnb3J5IExpZmVjeWNsZSAmIE5hdmlnYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb25nVGFza01ldHJpYyB7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkxPTkdfVEFTSyRTVEFUVVNdOiBMb25nVGFza01ldHJpY1N0YXR1cztcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTE9OR19UQVNLJFNFTEYkQ09VTlRdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5MT05HX1RBU0skU0VMRiRBVkdfRFVSQVRJT05dPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5MT05HX1RBU0skU0VMRiRTTE9XRVNUX09DQ1VSUkVOQ0VTXT86IFNsb3dMb25nVGFza09jY3VycmVuY2VbXTtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTE9OR19UQVNLJEFMTCRDT1VOVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkxPTkdfVEFTSyRBTEwkQVZHX0RVUkFUSU9OXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuTE9OR19UQVNLJEFMTCRTTE9XRVNUX09DQ1VSUkVOQ0VTXT86IFNsb3dMb25nVGFza09jY3VycmVuY2VbXTtcbn1cblxuLyoqXG4gKiBAY2F0ZWdvcnkgTGlmZWN5Y2xlICYgTmF2aWdhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBlcmZvcm1hbmNlU3VtbWFyeUZpZWxkcyB7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlBFUkZPUk1BTkNFJEFDVElWQVRJT05fU1RBUlRdPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JDb3VudFN1bW1hcnlGaWVsZHMge1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5FUlJPUiRIVFRQXzRYWF9DT1VOVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkVSUk9SJEhUVFBfNVhYX0NPVU5UXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRVJST1IkSFRUUF9PVEhFUl9DT1VOVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkVSUk9SJEVYQ0VQVElPTl9DT1VOVF0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLkVSUk9SJERST1BQRURfRVhDRVBUSU9OX0NPVU5UXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuRVJST1IkQ1NQX1ZJT0xBVElPTl9DT1VOVF0/OiBudW1iZXI7XG59XG5cbi8vIGNvbWJpbmVkIHRvIGtlZXAgdGhlIHRyYWNrZXJzIGEgbG90IHNpbXBsZXJcbmV4cG9ydCBpbnRlcmZhY2UgQmFja0ZvcmVncm91bmRTdW1tYXJ5RmllbGRzIHtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuUEFHRSRGT1JFR1JPVU5EX1RJTUVdPzogbnVtYmVyO1xuICAgIFtSVU1QYWdlU3VtbWFyeUV2ZW50S2V5cy5QQUdFJEJBQ0tHUk9VTkRfVElNRV0/OiBudW1iZXI7XG4gICAgW1JVTVBhZ2VTdW1tYXJ5RXZlbnRLZXlzLlZJRVckRk9SRUdST1VORF9USU1FXT86IG51bWJlcjtcbiAgICBbUlVNUGFnZVN1bW1hcnlFdmVudEtleXMuVklFVyRCQUNLR1JPVU5EX1RJTUVdPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEBpZ25vcmVcbiAqL1xuLyogZXNsaW50LWRpc2FibGUgdHlwZXNjcmlwdC1zb3J0LWtleXMvc3RyaW5nLWVudW0gLS0gbWV0cmljcyBhcmUgZ3JvdXBlZCAqL1xuZXhwb3J0IGNvbnN0IGVudW0gUlVNUGFnZVN1bW1hcnlFdmVudEtleXMge1xuICAgIC8vIFBlcmZvcm1hbmNlIEZpZWxkc1xuICAgIFBFUkZPUk1BTkNFJFRJTUVfT1JJR0lOID0gXCJwZXJmb3JtYW5jZS50aW1lX29yaWdpblwiLFxuICAgIFBFUkZPUk1BTkNFJEFDVElWQVRJT05fU1RBUlQgPSBcInBlcmZvcm1hbmNlLmFjdGl2YXRpb25fc3RhcnRcIixcblxuICAgIC8vIEVycm9yc1xuICAgIEVSUk9SJEhUVFBfNFhYX0NPVU5UID0gXCJlcnJvci5odHRwXzR4eF9jb3VudFwiLFxuICAgIEVSUk9SJEhUVFBfNVhYX0NPVU5UID0gXCJlcnJvci5odHRwXzV4eF9jb3VudFwiLFxuICAgIEVSUk9SJEhUVFBfT1RIRVJfQ09VTlQgPSBcImVycm9yLmh0dHBfb3RoZXJfY291bnRcIixcbiAgICBFUlJPUiRFWENFUFRJT05fQ09VTlQgPSBcImVycm9yLmV4Y2VwdGlvbl9jb3VudFwiLFxuICAgIEVSUk9SJERST1BQRURfRVhDRVBUSU9OX0NPVU5UID0gXCJlcnJvci5kcm9wcGVkX2V4Y2VwdGlvbl9jb3VudFwiLFxuICAgIEVSUk9SJENTUF9WSU9MQVRJT05fQ09VTlQgPSBcImVycm9yLmNzcF92aW9sYXRpb25fY291bnRcIixcblxuICAgIC8vIFBhZ2VcbiAgICBQQUdFJEZPUkVHUk9VTkRfVElNRSA9IFwicGFnZS5mb3JlZ3JvdW5kX3RpbWVcIixcbiAgICBQQUdFJEJBQ0tHUk9VTkRfVElNRSA9IFwicGFnZS5iYWNrZ3JvdW5kX3RpbWVcIixcbiAgICBQQUdFJFBSRVJFTkRFUl9USU1FID0gXCJwYWdlLnByZXJlbmRlcl90aW1lXCIsXG5cbiAgICAvLyBWaWV3XG4gICAgVklFVyRGT1JFR1JPVU5EX1RJTUUgPSBcInZpZXcuZm9yZWdyb3VuZF90aW1lXCIsXG4gICAgVklFVyRCQUNLR1JPVU5EX1RJTUUgPSBcInZpZXcuYmFja2dyb3VuZF90aW1lXCIsXG4gICAgVklFVyRQUkVSRU5ERVJfVElNRSA9IFwidmlldy5wcmVyZW5kZXJfdGltZVwiLFxuICAgIFZJRVckU0VRVUVOQ0VfTlVNQkVSID0gXCJ2aWV3LnNlcXVlbmNlX251bWJlclwiLFxuXG4gICAgRklEJFNUQVRVUyA9IFwiZmlkLnN0YXR1c1wiLFxuICAgIEZJRCRMT0FESU5HX1NUQVRFID0gXCJmaWQubG9hZGluZ19zdGF0ZVwiLFxuICAgIEZJRCRTVEFSVF9USU1FID0gXCJmaWQuc3RhcnRfdGltZVwiLFxuICAgIEZJRCREVVJBVElPTiA9IFwiZmlkLmR1cmF0aW9uXCIsXG4gICAgRklEJE5BTUUgPSBcImZpZC5uYW1lXCIsXG4gICAgRklEJFBST0NFU1NJTkdfU1RBUlQgPSBcImZpZC5wcm9jZXNzaW5nX3N0YXJ0XCIsXG4gICAgRklEJFBST0NFU1NJTkdfRU5EID0gXCJmaWQucHJvY2Vzc2luZ19lbmRcIixcbiAgICBGSUQkQ0FOQ0VMQUJMRSA9IFwiZmlkLmNhbmNlbGFibGVcIixcbiAgICBGSUQkVUlfRUxFTUVOVCRYUEFUSCA9IFwiZmlkLnVpX2VsZW1lbnQueHBhdGhcIixcbiAgICBGSUQkVUlfRUxFTUVOVCRUQUdfTkFNRSA9IFwiZmlkLnVpX2VsZW1lbnQudGFnX25hbWVcIixcblxuICAgIExDUCRTVEFUVVMgPSBcImxjcC5zdGF0dXNcIixcbiAgICBMQ1AkVVBEQVRFX0NPVU5UID0gXCJsY3AudXBkYXRlX2NvdW50XCIsXG4gICAgTENQJFNUQVJUX1RJTUUgPSBcImxjcC5zdGFydF90aW1lXCIsXG4gICAgTENQJFVSTCA9IFwibGNwLnVybFwiLFxuICAgIExDUCRMT0FEX1RJTUUgPSBcImxjcC5sb2FkX3RpbWVcIixcbiAgICBMQ1AkUkVOREVSX1RJTUUgPSBcImxjcC5yZW5kZXJfdGltZVwiLFxuICAgIExDUCRTSVpFID0gXCJsY3Auc2l6ZVwiLFxuICAgIExDUCRJRCA9IFwibGNwLmlkXCIsXG4gICAgTENQJFVJX0VMRU1FTlQkWFBBVEggPSBcImxjcC51aV9lbGVtZW50LnhwYXRoXCIsXG4gICAgTENQJFVJX0VMRU1FTlQkVEFHX05BTUUgPSBcImxjcC51aV9lbGVtZW50LnRhZ19uYW1lXCIsXG4gICAgTENQJFVJX0VMRU1FTlQkUkVOREVSX0RFTEFZID0gXCJsY3AudWlfZWxlbWVudC5yZW5kZXJfZGVsYXlcIixcbiAgICBMQ1AkUkVTT1VSQ0UkTE9BRF9ERUxBWSA9IFwibGNwLnJlc291cmNlLmxvYWRfZGVsYXlcIixcbiAgICBMQ1AkUkVTT1VSQ0UkTE9BRF9EVVJBVElPTiA9IFwibGNwLnJlc291cmNlLmxvYWRfZHVyYXRpb25cIixcblxuICAgIElOUCRTVEFUVVMgPSBcImlucC5zdGF0dXNcIixcbiAgICBJTlAkVVBEQVRFX0NPVU5UID0gXCJpbnAudXBkYXRlX2NvdW50XCIsXG4gICAgSU5QJElOVEVSQUNUSU9OX0NPVU5UID0gXCJpbnAuaW50ZXJhY3Rpb25fY291bnRcIixcbiAgICBJTlAkTE9BRElOR19TVEFURSA9IFwiaW5wLmxvYWRpbmdfc3RhdGVcIixcbiAgICBJTlAkU1RBUlRfVElNRSA9IFwiaW5wLnN0YXJ0X3RpbWVcIixcbiAgICBJTlAkRFVSQVRJT04gPSBcImlucC5kdXJhdGlvblwiLFxuICAgIElOUCROQU1FID0gXCJpbnAubmFtZVwiLFxuICAgIElOUCRQUk9DRVNTSU5HX1NUQVJUID0gXCJpbnAucHJvY2Vzc2luZ19zdGFydFwiLFxuICAgIElOUCRQUk9DRVNTSU5HX0VORCA9IFwiaW5wLnByb2Nlc3NpbmdfZW5kXCIsXG4gICAgSU5QJENBTkNFTEFCTEUgPSBcImlucC5jYW5jZWxhYmxlXCIsXG4gICAgSU5QJFVJX0VMRU1FTlQkWFBBVEggPSBcImlucC51aV9lbGVtZW50LnhwYXRoXCIsXG4gICAgSU5QJFVJX0VMRU1FTlQkVEFHX05BTUUgPSBcImlucC51aV9lbGVtZW50LnRhZ19uYW1lXCIsXG5cbiAgICBGQ1AkU1RBVFVTID0gXCJmY3Auc3RhdHVzXCIsXG4gICAgRkNQJExPQURJTkdfU1RBVEUgPSBcImZjcC5sb2FkaW5nX3N0YXRlXCIsXG4gICAgRkNQJFZBTFVFID0gXCJmY3AudmFsdWVcIixcblxuICAgIENMUyRTVEFUVVMgPSBcImNscy5zdGF0dXNcIixcbiAgICBDTFMkVVBEQVRFX0NPVU5UID0gXCJjbHMudXBkYXRlX2NvdW50XCIsXG4gICAgQ0xTJExPQURJTkdfU1RBVEUgPSBcImNscy5sb2FkaW5nX3N0YXRlXCIsXG4gICAgQ0xTJFZBTFVFID0gXCJjbHMudmFsdWVcIixcbiAgICBDTFMkVUlfRUxFTUVOVCRYUEFUSCA9IFwiY2xzLnVpX2VsZW1lbnQueHBhdGhcIixcbiAgICBDTFMkVUlfRUxFTUVOVCRUQUdfTkFNRSA9IFwiY2xzLnVpX2VsZW1lbnQudGFnX25hbWVcIixcbiAgICBDTFMkVUlfRUxFTUVOVCRTSElGVF9USU1FID0gXCJjbHMudWlfZWxlbWVudC5zaGlmdF90aW1lXCIsXG4gICAgQ0xTJFVJX0VMRU1FTlQkU0hJRlRfVkFMVUUgPSBcImNscy51aV9lbGVtZW50LnNoaWZ0X3ZhbHVlXCIsXG5cbiAgICBGUCRTVEFUVVMgPSBcImZwLnN0YXR1c1wiLFxuICAgIEZQJExPQURJTkdfU1RBVEUgPSBcImZwLmxvYWRpbmdfc3RhdGVcIixcbiAgICBGUCRWQUxVRSA9IFwiZnAudmFsdWVcIixcblxuICAgIFRURkIkU1RBVFVTID0gXCJ0dGZiLnN0YXR1c1wiLFxuICAgIFRURkIkVkFMVUUgPSBcInR0ZmIudmFsdWVcIixcbiAgICBUVEZCJFdBSVRJTkdfRFVSQVRJT04gPSBcInR0ZmIud2FpdGluZ19kdXJhdGlvblwiLFxuICAgIFRURkIkQ0FDSEVfRFVSQVRJT04gPSBcInR0ZmIuY2FjaGVfZHVyYXRpb25cIixcbiAgICBUVEZCJEROU19EVVJBVElPTiA9IFwidHRmYi5kbnNfZHVyYXRpb25cIixcbiAgICBUVEZCJENPTk5FQ1RJT05fRFVSQVRJT04gPSBcInR0ZmIuY29ubmVjdGlvbl9kdXJhdGlvblwiLFxuICAgIFRURkIkUkVRVUVTVF9EVVJBVElPTiA9IFwidHRmYi5yZXF1ZXN0X2R1cmF0aW9uXCIsXG5cbiAgICBMT05HX1RBU0skU1RBVFVTID0gXCJsb25nX3Rhc2suc3RhdHVzXCIsXG4gICAgTE9OR19UQVNLJFNFTEYkQ09VTlQgPSBcImxvbmdfdGFzay5zZWxmLmNvdW50XCIsXG4gICAgTE9OR19UQVNLJFNFTEYkQVZHX0RVUkFUSU9OID0gXCJsb25nX3Rhc2suc2VsZi5hdmdfZHVyYXRpb25cIixcbiAgICBMT05HX1RBU0skU0VMRiRTTE9XRVNUX09DQ1VSUkVOQ0VTID0gXCJsb25nX3Rhc2suc2VsZi5zbG93ZXN0X29jY3VycmVuY2VzXCIsXG4gICAgTE9OR19UQVNLJEFMTCRDT1VOVCA9IFwibG9uZ190YXNrLmFsbC5jb3VudFwiLFxuICAgIExPTkdfVEFTSyRBTEwkQVZHX0RVUkFUSU9OID0gXCJsb25nX3Rhc2suYWxsLmF2Z19kdXJhdGlvblwiLFxuICAgIExPTkdfVEFTSyRBTEwkU0xPV0VTVF9PQ0NVUlJFTkNFUyA9IFwibG9uZ190YXNrLmFsbC5zbG93ZXN0X29jY3VycmVuY2VzXCJcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gRW50cnlOYW1lcyB7XG4gICAgRlAgPSBcImZpcnN0LXBhaW50XCIsXG4gICAgRkNQID0gXCJmaXJzdC1jb250ZW50ZnVsLXBhaW50XCIsXG4gICAgTENQID0gXCJsYXJnZXN0LWNvbnRlbnRmdWwtcGFpbnRcIlxufVxuXG4vKipcbiAqIEBjYXRlZ29yeSBMaWZlY3ljbGUgJiBOYXZpZ2F0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBlbnVtIFdlYlZpdGFscyB7XG4gICAgLyoqXG4gICAgICoge0BsaW5rICFQZXJmb3JtYW5jZVBhaW50VGltaW5nfSAtIHtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL0dsb3NzYXJ5L0ZpcnN0X2NvbnRlbnRmdWxfcGFpbnQgfCBGaXJzdENvbnRlbnRmdWxQYWludH1cbiAgICAgKiBhbmQge0BsaW5rIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvR2xvc3NhcnkvRmlyc3RfcGFpbnQgfCBGaXJzdFBhaW50fVxuICAgICAqL1xuICAgIFBBSU5UID0gXCJwYWludFwiLFxuICAgIC8qKlxuICAgICAqIHtAbGluayAhTGFyZ2VzdENvbnRlbnRmdWxQYWludH0gLSBSZW5kZXIgdGltZSBvZiB0aGUgbGFyZ2VzdCBpbWFnZSBvciB0ZXh0IGJsb2NrIHZpc2libGUgd2l0aGluIHRoZSB2aWV3cG9ydCwgcmVjb3JkZWRcbiAgICAgKiBmcm9tIHdoZW4gdGhlIHBhZ2UgZmlyc3QgYmVnaW5zIHRvIGxvYWQuXG4gICAgICovXG4gICAgTENQID0gXCJsYXJnZXN0LWNvbnRlbnRmdWwtcGFpbnRcIixcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgIUxheW91dFNoaWZ0fSAtIHtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL0dsb3NzYXJ5L0NMUyB8IEN1bXVsYXRpdmVMYXlvdXRTaGlmdH0gbWVhc3VyZXMgdG9cbiAgICAgKiB3aGljaCBleHRlbnQgdXNlcnMgZW5jb3VudGVyIHVuZXhwZWN0ZWQgbGF5b3V0IHNoaWZ0cy5cbiAgICAgKi9cbiAgICBDTFMgPSBcImxheW91dC1zaGlmdFwiLFxuICAgIC8qKlxuICAgICAqIHtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL0dsb3NzYXJ5L0ZpcnN0X2lucHV0X2RlbGF5IHwgRmlyc3RJbnB1dERlbGF5fSBtZWFzdXJlcyB0aGUgdGltZVxuICAgICAqIGZyb20gd2hlbiBhIHVzZXIgZmlyc3QgaW50ZXJhY3RzIHdpdGggdGhlIHBhZ2UgdG8gdGhlIHRpbWUgd2hlbiB0aGUgYnJvd3NlciBpcyBhYmxlIHRvIHJlc3BvbmQgdG8gdGhhdFxuICAgICAqIGludGVyYWN0aW9uLlxuICAgICAqL1xuICAgIEZJRCA9IFwiZmlyc3QtaW5wdXRcIixcbiAgICAvKipcbiAgICAgKiB7QGxpbmsgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9HbG9zc2FyeS9JbnRlcmFjdGlvbl90b19uZXh0X3BhaW50IHwgSW50ZXJhY3Rpb25Ub05leHRQYWludH1cbiAgICAgKiBtZWFzdXJlcyB0aGUgdGltZSBmcm9tIHdoZW4gYSB1c2VyIGludGVyYWN0cyB3aXRoIHRoZSBwYWdlIHVudGlsIGEgdmlzdWFsIHJlcHJlc2VudGF0aW9uIG9mIGEgcGFnZSByZWFjdGlvbiB3YXNcbiAgICAgKiByZW5kZXJlZC5cbiAgICAgKi9cbiAgICBJTlAgPSBcImV2ZW50XCIsXG4gICAgLyoqXG4gICAgICoge0BsaW5rIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvR2xvc3NhcnkvSW50ZXJhY3Rpb25fdG9fbmV4dF9wYWludCB8IEludGVyYWN0aW9uVG9OZXh0UGFpbnR9XG4gICAgICogbWVhc3VyZXMgdGhlIHRpbWUgZnJvbSB3aGVuIGEgdXNlciBpbnRlcmFjdHMgd2l0aCB0aGUgcGFnZSB1bnRpbCBhIHZpc3VhbCByZXByZXNlbnRhdGlvbiBvZiBhIHBhZ2UgcmVhY3Rpb24gd2FzXG4gICAgICogcmVuZGVyZWQuXG4gICAgICovXG4gICAgTE9OR19UQVNLID0gXCJsb25ndGFza1wiXG59XG4iXX0=
@@ -0,0 +1,39 @@
1
+ import type { CharacteristicsFieldsKeys, GeneralRumEventFields, GeneralRumEventFieldsKeys } from "./shared-namespaces-and-fields/general-rum-event-fields.js";
2
+ import type { SCHEMA_VERSION } from "./schema-versions.js";
3
+ /**
4
+ * @category Self-monitoring
5
+ */
6
+ export declare const enum SfmTypes {
7
+ /**
8
+ * Event yields information about data collection status.
9
+ */
10
+ DATA_COLLECTION = "DATA_COLLECTION"
11
+ }
12
+ /**
13
+ * @category Self-monitoring
14
+ */
15
+ export declare const enum SfmNames {
16
+ /**
17
+ * Reported if RUM JavaScript is disabled via opt-in settings.
18
+ */
19
+ DATA_COLLECTION_DISABLED = "Data collection disabled",
20
+ /**
21
+ * Reported if RUM JavaScript is enabled via opt-in settings.
22
+ */
23
+ DATA_COLLECTION_ENABLED = "Data collection enabled"
24
+ }
25
+ export declare const enum SelfmonitoringEventKeys {
26
+ PERFORMANCE$TIME_ORIGIN = "performance.time_origin",
27
+ SFM$NAME = "sfm.name",
28
+ SFM$TYPE = "sfm.type"
29
+ }
30
+ /**
31
+ * @category Self-monitoring
32
+ */
33
+ export interface RUMSelfmonitoringEvent extends GeneralRumEventFields {
34
+ [CharacteristicsFieldsKeys.CHARACTERISTICS$IS_SELF_MONITORING]: true;
35
+ [SelfmonitoringEventKeys.SFM$TYPE]: SfmTypes;
36
+ [SelfmonitoringEventKeys.SFM$NAME]: SfmNames;
37
+ [SelfmonitoringEventKeys.PERFORMANCE$TIME_ORIGIN]?: number;
38
+ [GeneralRumEventFieldsKeys.DT$RUM$SCHEMA_VERSION]: typeof SCHEMA_VERSION;
39
+ }