@adobe/helix-rum-enhancer 2.47.1 → 2.47.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [2.47.3](https://github.com/adobe/helix-rum-enhancer/compare/v2.47.2...v2.47.3) (2026-05-13)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * strip query params from referrer source in navigate/enter checkpoints ([#567](https://github.com/adobe/helix-rum-enhancer/issues/567)) ([0dcb990](https://github.com/adobe/helix-rum-enhancer/commit/0dcb9907214972d8462b7d33f99973095b5cb39d))
7
+
8
+ ## [2.47.2](https://github.com/adobe/helix-rum-enhancer/compare/v2.47.1...v2.47.2) (2026-04-15)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **lint:** add curly braces to satisfy updated eslint config ([137a9ed](https://github.com/adobe/helix-rum-enhancer/commit/137a9ed7452fe6695d642d3a94f97860813e3304))
14
+
1
15
  ## [2.47.1](https://github.com/adobe/helix-rum-enhancer/compare/v2.47.0...v2.47.1) (2026-04-14)
2
16
 
3
17
 
package/modules/dom.js CHANGED
@@ -14,7 +14,9 @@ export const getTargetValue = (el) => el.getAttribute('data-rum-target') || el.g
14
14
 
15
15
  export const targetSelector = (el) => {
16
16
  try {
17
- if (!el) return undefined;
17
+ if (!el) {
18
+ return undefined;
19
+ }
18
20
  let v = getTargetValue(el);
19
21
  if (!v && el.tagName !== 'A' && el.closest('a')) {
20
22
  v = getTargetValue(el.closest('a'));
@@ -39,21 +41,19 @@ function walk(el, checkFn) {
39
41
  }
40
42
 
41
43
  function isDialog(el) {
42
- // doing it well
43
- if (el.tagName === 'DIALOG') return true;
44
- // making the best of it
45
44
  const cs = window.getComputedStyle(el);
46
- return ['dialog', 'alertdialog'].find((r) => el.getAttribute('role') === r)
45
+ return el.tagName === 'DIALOG'
46
+ || ['dialog', 'alertdialog'].find((r) => el.getAttribute('role') === r)
47
47
  || el.getAttribute('aria-modal') === 'true'
48
48
  || (cs && cs.position === 'fixed' && cs.zIndex > 100);
49
49
  }
50
50
 
51
51
  function isButton(el) {
52
- if (el.tagName === 'BUTTON') return true;
53
- if (el.tagName === 'INPUT' && el.getAttribute('type') === 'button') return true;
52
+ if (el.tagName === 'BUTTON' || (el.tagName === 'INPUT' && el.getAttribute('type') === 'button')) {
53
+ return true;
54
+ }
54
55
  if (el.tagName === 'A') {
55
- const classes = Array.from(el.classList);
56
- return classes.some((className) => className.match(/button|cta/));
56
+ return Array.from(el.classList).some((className) => className.match(/button|cta/));
57
57
  }
58
58
  return el.getAttribute('role') === 'button';
59
59
  }
@@ -83,14 +83,14 @@ function getSourceElement(el) {
83
83
  ? `[type='${el.getAttribute('type') || ''}']`
84
84
  : ''));
85
85
  }
86
- if (walk(el, isButton)) return 'button';
87
- return el.tagName.toLowerCase().match(/^(a|img|video|form)$/) && el.tagName.toLowerCase();
86
+ return (walk(el, isButton) && 'button')
87
+ || (el.tagName.toLowerCase().match(/^(a|img|video|form)$/) && el.tagName.toLowerCase());
88
88
  }
89
89
 
90
90
  function getSourceIdentifier(el) {
91
- if (el.id) return `#${CSS.escape(el.id)}`;
92
- if (el.getAttribute('data-block-name')) return `.${el.getAttribute('data-block-name')}`;
93
- return (el.classList.length > 0 && `.${CSS.escape(el.classList[0])}`);
91
+ return (el.id && `#${CSS.escape(el.id)}`)
92
+ || (el.getAttribute('data-block-name') && `.${el.getAttribute('data-block-name')}`)
93
+ || (el.classList.length > 0 && `.${CSS.escape(el.classList[0])}`);
94
94
  }
95
95
 
96
96
  export const sourceSelector = (el) => {
package/modules/index.js CHANGED
@@ -107,7 +107,9 @@ function getIntersectionObserver(checkpoint) {
107
107
  if (vmDedupe.has(key)) {
108
108
  return;
109
109
  }
110
- if (vmDedupe.size < MAX_EV) vmDedupe.add(key);
110
+ if (vmDedupe.size < MAX_EV) {
111
+ vmDedupe.add(key);
112
+ }
111
113
  }
112
114
  sampleRUM(checkpoint, { target, source });
113
115
  });
@@ -215,7 +217,8 @@ function processQueue() {
215
217
  function addNavigationTracking() {
216
218
  // enter checkpoint when referrer is not the current page url
217
219
  const navigate = (source, type, perfEntry) => {
218
- const payload = { source, target: document.visibilityState };
220
+ // eslint-disable-next-line object-curly-newline, max-len
221
+ const payload = { source: source && urlSanitizers.path(source), target: document.visibilityState };
219
222
  /* c8 ignore next 13 */
220
223
  // prerendering cannot be tested yet with headless browsers
221
224
  if (document.prerendering) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/helix-rum-enhancer",
3
- "version": "2.47.1",
3
+ "version": "2.47.3",
4
4
  "description": "Helix RUM Enhancer",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -33,10 +33,10 @@
33
33
  "reporter-options": "configFile=.mocha-multi.json"
34
34
  },
35
35
  "devDependencies": {
36
- "@adobe/eslint-config-helix": "3.0.13",
37
- "@adobe/helix-rum-js": "2.13.6",
36
+ "@adobe/eslint-config-helix": "3.0.26",
37
+ "@adobe/helix-rum-js": "2.14.3",
38
38
  "@adobe/rollup-plugin-checksum": "1.2.0",
39
- "@eslint/config-helpers": "0.5.3",
39
+ "@eslint/config-helpers": "0.5.5",
40
40
  "@esm-bundle/chai": "4.3.4-fix.0",
41
41
  "@rollup/plugin-babel": "7.0.0",
42
42
  "@semantic-release/changelog": "6.0.3",
@@ -53,14 +53,14 @@
53
53
  "eslint": "9.30.1",
54
54
  "eslint-plugin-header": "3.1.1",
55
55
  "eslint-plugin-import": "2.32.0",
56
- "globals": "17.4.0",
56
+ "globals": "17.5.0",
57
57
  "husky": "9.1.7",
58
58
  "jsdoc-to-markdown": "9.1.3",
59
- "junit-report-builder": "5.1.1",
59
+ "junit-report-builder": "5.1.2",
60
60
  "lint-staged": "16.4.0",
61
61
  "mocha": "11.7.5",
62
62
  "mocha-multi-reporters": "1.5.1",
63
- "rollup": "4.60.1",
63
+ "rollup": "4.60.2",
64
64
  "rollup-plugin-eslint-bundle": "9.0.0",
65
65
  "semantic-release": "25.0.3",
66
66
  "semantic-release-slack-bot": "^4.0.2",
package/plugins/form.js CHANGED
@@ -11,16 +11,15 @@
11
11
  */
12
12
 
13
13
  export const getSubmitType = (el) => {
14
- if (!el || el.tagName !== 'FORM') return undefined;
15
- // if the form has a search role or a search field, it's a search form
14
+ if (!el || el.tagName !== 'FORM') {
15
+ return undefined;
16
+ }
16
17
  if (el.getAttribute('role') === 'search'
17
- || el.querySelector('input[type="search"], input[role="searchbox"]')) return 'search';
18
- // if the form has one password input, it's a login form
19
- // if the form has more than one password input, it's a signup form
18
+ || el.querySelector('input[type="search"], input[role="searchbox"]')) {
19
+ return 'search';
20
+ }
20
21
  const pwCount = el.querySelectorAll('input[type="password"]').length;
21
- if (pwCount === 1) return 'login';
22
- if (pwCount > 1) return 'signup';
23
- return 'formsubmit';
22
+ return (pwCount === 1 && 'login') || (pwCount > 1 && 'signup') || 'formsubmit';
24
23
  };
25
24
 
26
25
  let rootMo = null;
package/src/index.js CHANGED
@@ -42,7 +42,9 @@
42
42
  const getTargetValue = el => el.getAttribute('data-rum-target') || el.getAttribute('href') || el.currentSrc || el.getAttribute('src') || el.dataset.action || el.action;
43
43
  const targetSelector = el => {
44
44
  try {
45
- if (!el) return undefined;
45
+ if (!el) {
46
+ return undefined;
47
+ }
46
48
  let v = getTargetValue(el);
47
49
  if (!v && el.tagName !== 'A' && el.closest('a')) {
48
50
  v = getTargetValue(el.closest('a'));
@@ -62,16 +64,15 @@
62
64
  return checkFn(el) || walk(el.parentElement || el.parentNode && el.parentNode.host, checkFn);
63
65
  }
64
66
  function isDialog(el) {
65
- if (el.tagName === 'DIALOG') return true;
66
67
  const cs = window.getComputedStyle(el);
67
- return ['dialog', 'alertdialog'].find(r => el.getAttribute('role') === r) || el.getAttribute('aria-modal') === 'true' || cs && cs.position === 'fixed' && cs.zIndex > 100;
68
+ return el.tagName === 'DIALOG' || ['dialog', 'alertdialog'].find(r => el.getAttribute('role') === r) || el.getAttribute('aria-modal') === 'true' || cs && cs.position === 'fixed' && cs.zIndex > 100;
68
69
  }
69
70
  function isButton(el) {
70
- if (el.tagName === 'BUTTON') return true;
71
- if (el.tagName === 'INPUT' && el.getAttribute('type') === 'button') return true;
71
+ if (el.tagName === 'BUTTON' || el.tagName === 'INPUT' && el.getAttribute('type') === 'button') {
72
+ return true;
73
+ }
72
74
  if (el.tagName === 'A') {
73
- const classes = Array.from(el.classList);
74
- return classes.some(className => className.match(/button|cta/));
75
+ return Array.from(el.classList).some(className => className.match(/button|cta/));
75
76
  }
76
77
  return el.getAttribute('role') === 'button';
77
78
  }
@@ -92,13 +93,10 @@
92
93
  if (f && Array.from(f.elements).includes(el)) {
93
94
  return el.tagName.toLowerCase() + (['INPUT', 'BUTTON'].includes(el.tagName) ? `[type='${el.getAttribute('type') || ''}']` : '');
94
95
  }
95
- if (walk(el, isButton)) return 'button';
96
- return el.tagName.toLowerCase().match(/^(a|img|video|form)$/) && el.tagName.toLowerCase();
96
+ return walk(el, isButton) && 'button' || el.tagName.toLowerCase().match(/^(a|img|video|form)$/) && el.tagName.toLowerCase();
97
97
  }
98
98
  function getSourceIdentifier(el) {
99
- if (el.id) return `#${CSS.escape(el.id)}`;
100
- if (el.getAttribute('data-block-name')) return `.${el.getAttribute('data-block-name')}`;
101
- return el.classList.length > 0 && `.${CSS.escape(el.classList[0])}`;
99
+ return el.id && `#${CSS.escape(el.id)}` || el.getAttribute('data-block-name') && `.${el.getAttribute('data-block-name')}` || el.classList.length > 0 && `.${CSS.escape(el.classList[0])}`;
102
100
  }
103
101
  const sourceSelector = el => {
104
102
  try {
@@ -202,7 +200,9 @@
202
200
  if (vmDedupe.has(key)) {
203
201
  return;
204
202
  }
205
- if (vmDedupe.size < MAX_EV) vmDedupe.add(key);
203
+ if (vmDedupe.size < MAX_EV) {
204
+ vmDedupe.add(key);
205
+ }
206
206
  }
207
207
  sampleRUM(checkpoint, {
208
208
  target,
@@ -303,7 +303,7 @@
303
303
  function addNavigationTracking() {
304
304
  const navigate = (source, type, perfEntry) => {
305
305
  const payload = {
306
- source,
306
+ source: source && urlSanitizers.path(source),
307
307
  target: document.visibilityState
308
308
  };
309
309
  if (document.prerendering) {
package/src/index.md5 CHANGED
@@ -1 +1 @@
1
- fa98376e172bd50a2d07091d05e50acd
1
+ fa307b6aa9f67e9f3e13a064b9d0d9d1
package/src/index.sri CHANGED
@@ -1 +1 @@
1
- sha384-JXOUwSPNDq4X6Qdu8iG5xceLUolYUKzfZ45yEBNJ6tK1AKEAhwI43rDYmMAVo3sa
1
+ sha384-LDEOuwnv1QygFu3bCEAHTg6z4MeF1qxPVmZFOdVyUNmMbptaV4/+WwXyADbV1Uom
@@ -1 +1 @@
1
- 414efdfffd1816c02fe10764f1ae7a53
1
+ 53d5a37b9dae3321e18f25551f062fa5
@@ -10,12 +10,14 @@
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
12
  const getSubmitType = el => {
13
- if (!el || el.tagName !== 'FORM') return undefined;
14
- if (el.getAttribute('role') === 'search' || el.querySelector('input[type="search"], input[role="searchbox"]')) return 'search';
13
+ if (!el || el.tagName !== 'FORM') {
14
+ return undefined;
15
+ }
16
+ if (el.getAttribute('role') === 'search' || el.querySelector('input[type="search"], input[role="searchbox"]')) {
17
+ return 'search';
18
+ }
15
19
  const pwCount = el.querySelectorAll('input[type="password"]').length;
16
- if (pwCount === 1) return 'login';
17
- if (pwCount > 1) return 'signup';
18
- return 'formsubmit';
20
+ return pwCount === 1 && 'login' || pwCount > 1 && 'signup' || 'formsubmit';
19
21
  };
20
22
  let rootMo = null;
21
23
  function addFormTracking({
@@ -10,12 +10,14 @@
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
12
  const getSubmitType = el => {
13
- if (!el || el.tagName !== 'FORM') return undefined;
14
- if (el.getAttribute('role') === 'search' || el.querySelector('input[type="search"], input[role="searchbox"]')) return 'search';
13
+ if (!el || el.tagName !== 'FORM') {
14
+ return undefined;
15
+ }
16
+ if (el.getAttribute('role') === 'search' || el.querySelector('input[type="search"], input[role="searchbox"]')) {
17
+ return 'search';
18
+ }
15
19
  const pwCount = el.querySelectorAll('input[type="password"]').length;
16
- if (pwCount === 1) return 'login';
17
- if (pwCount > 1) return 'signup';
18
- return 'formsubmit';
20
+ return pwCount === 1 && 'login' || pwCount > 1 && 'signup' || 'formsubmit';
19
21
  };
20
22
  let rootMo = null;
21
23
  function addFormTracking({
@@ -89,4 +91,4 @@ function addFormTracking({
89
91
  }
90
92
 
91
93
  export { addFormTracking as default, getSubmitType };
92
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tYXAuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3BsdWdpbnMvZm9ybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjQgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0IGNvbnN0IGdldFN1Ym1pdFR5cGUgPSAoZWwpID0+IHtcbiAgaWYgKCFlbCB8fCBlbC50YWdOYW1lICE9PSAnRk9STScpIHJldHVybiB1bmRlZmluZWQ7XG4gIC8vIGlmIHRoZSBmb3JtIGhhcyBhIHNlYXJjaCByb2xlIG9yIGEgc2VhcmNoIGZpZWxkLCBpdCdzIGEgc2VhcmNoIGZvcm1cbiAgaWYgKGVsLmdldEF0dHJpYnV0ZSgncm9sZScpID09PSAnc2VhcmNoJ1xuICAgIHx8IGVsLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W3R5cGU9XCJzZWFyY2hcIl0sIGlucHV0W3JvbGU9XCJzZWFyY2hib3hcIl0nKSkgcmV0dXJuICdzZWFyY2gnO1xuICAvLyBpZiB0aGUgZm9ybSBoYXMgb25lIHBhc3N3b3JkIGlucHV0LCBpdCdzIGEgbG9naW4gZm9ybVxuICAvLyBpZiB0aGUgZm9ybSBoYXMgbW9yZSB0aGFuIG9uZSBwYXNzd29yZCBpbnB1dCwgaXQncyBhIHNpZ251cCBmb3JtXG4gIGNvbnN0IHB3Q291bnQgPSBlbC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0nKS5sZW5ndGg7XG4gIGlmIChwd0NvdW50ID09PSAxKSByZXR1cm4gJ2xvZ2luJztcbiAgaWYgKHB3Q291bnQgPiAxKSByZXR1cm4gJ3NpZ251cCc7XG4gIHJldHVybiAnZm9ybXN1Ym1pdCc7XG59O1xuXG5sZXQgcm9vdE1vID0gbnVsbDtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gYWRkRm9ybVRyYWNraW5nKHtcbiAgY3JlYXRlTU8sXG4gIHNhbXBsZVJVTSwgc291cmNlU2VsZWN0b3IsIHRhcmdldFNlbGVjdG9yLCBjb250ZXh0LCBnZXRJbnRlcnNlY3Rpb25PYnNlcnZlcixcbn0pIHtcbiAgLy8gVHJhY2sgZXhpc3RpbmcgZm9ybXNcblxuICBmdW5jdGlvbiB0cmFja0Zvcm0oZm9ybSkge1xuICAgIGZvcm0uYWRkRXZlbnRMaXN0ZW5lcignc3VibWl0JywgKGUpID0+IHtcbiAgICAgIC8vIENoZWNrIGZvciBmb3JtIHZhbGlkYXRpb24gZXJyb3JzIGJlZm9yZSBzdWJtaXR0aW5nXG4gICAgICBjb25zdCBpbnZhbGlkRmllbGRzID0gZm9ybS5xdWVyeVNlbGVjdG9yQWxsKCc6aW52YWxpZCcpO1xuICAgICAgLy8gU2VuZCBlcnJvciBjaGVja3BvaW50cyBmb3IgZWFjaCBpbnZhbGlkIGZpZWxkXG4gICAgICBpbnZhbGlkRmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICAgIGlmIChmaWVsZCAmJiBmaWVsZC52YWxpZGl0eSkge1xuICAgICAgICAgIGNvbnN0IHByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihmaWVsZC52YWxpZGl0eSk7XG4gICAgICAgICAgY29uc3QgZXJyb3JUeXBlID0gcHJvdG90eXBlXG4gICAgICAgICAgICA/IE9iamVjdC5rZXlzKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHByb3RvdHlwZSkpXG4gICAgICAgICAgICAgIC5maWx0ZXIoKGtleSkgPT4ga2V5ICE9PSAndmFsaWQnICYmIGtleSAhPT0gJ2NvbnN0cnVjdG9yJyAmJiAha2V5LnN0YXJ0c1dpdGgoJ1N5bWJvbCcpKVxuICAgICAgICAgICAgICAuZmluZCgoa2V5KSA9PiBmaWVsZC52YWxpZGl0eVtrZXldKSB8fCAnY3VzdG9tJ1xuICAgICAgICAgICAgOiAnY3VzdG9tJztcblxuICAgICAgICAgIHNhbXBsZVJVTSgnZXJyb3InLCB7XG4gICAgICAgICAgICB0YXJnZXQ6IGVycm9yVHlwZSxcbiAgICAgICAgICAgIHNvdXJjZTogc291cmNlU2VsZWN0b3IoZmllbGQpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIC8vIE9ubHkgc2VuZCBmb3Jtc3VibWl0IGV2ZW50IGlmIHRoZXJlIGFyZSBubyB2YWxpZGF0aW9uIGVycm9yc1xuICAgICAgaWYgKGludmFsaWRGaWVsZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHNhbXBsZVJVTShnZXRTdWJtaXRUeXBlKGUudGFyZ2V0KSwge1xuICAgICAgICAgIHRhcmdldDogdGFyZ2V0U2VsZWN0b3IoZS50YXJnZXQpLFxuICAgICAgICAgIHNvdXJjZTogc291cmNlU2VsZWN0b3IoZS50YXJnZXQpLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LCB7IG9uY2U6IHRydWUgfSk7XG5cbiAgICBnZXRJbnRlcnNlY3Rpb25PYnNlcnZlcigndmlld2Jsb2NrJykub2JzZXJ2ZShmb3JtKTtcbiAgICBsZXQgbGFzdFNvdXJjZTtcbiAgICBmb3JtLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB7XG4gICAgICBpZiAoZS50YXJnZXQuY2hlY2tWaXNpYmlsaXR5ICYmIGUudGFyZ2V0LmNoZWNrVmlzaWJpbGl0eSgpKSB7XG4gICAgICAgIGNvbnN0IHNvdXJjZSA9IHNvdXJjZVNlbGVjdG9yKGUudGFyZ2V0KTtcbiAgICAgICAgaWYgKHNvdXJjZSAhPT0gbGFzdFNvdXJjZSkge1xuICAgICAgICAgIHNhbXBsZVJVTSgnZmlsbCcsIHsgc291cmNlIH0pO1xuICAgICAgICAgIGxhc3RTb3VyY2UgPSBzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBmb3JtLmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCAoZSkgPT4ge1xuICAgICAgaWYgKFsnSU5QVVQnLCAnVEVYVEFSRUEnLCAnU0VMRUNUJywgJ0JVVFRPTiddLmluY2x1ZGVzKGUudGFyZ2V0LnRhZ05hbWUpXG4gICAgICAgIHx8IGUudGFyZ2V0LmdldEF0dHJpYnV0ZSgnY29udGVudGVkaXRhYmxlJykgPT09ICd0cnVlJykge1xuICAgICAgICBzYW1wbGVSVU0oJ2NsaWNrJywgeyBzb3VyY2U6IHNvdXJjZVNlbGVjdG9yKGUudGFyZ2V0KSB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNvbnRleHQucXVlcnlTZWxlY3RvckFsbCgnZm9ybScpLmZvckVhY2goKGZvcm0pID0+IHtcbiAgICB0cmFja0Zvcm0oZm9ybSk7XG4gIH0pO1xuXG4gIC8vIENyZWF0ZSBtdXRhdGlvbiBvYnNlcnZlciB0byB0cmFjayBkeW5hbWljYWxseSBhZGRlZCBmb3Jtc1xuICBpZiAoIXJvb3RNbykge1xuICAgIHJvb3RNbyA9IGNyZWF0ZU1PKChtdXRhdGlvbkxpc3QpID0+IHtcbiAgICAgIG11dGF0aW9uTGlzdC5mb3JFYWNoKChtdXRhdGlvbikgPT4ge1xuICAgICAgICBpZiAobXV0YXRpb24uYWRkZWROb2Rlcykge1xuICAgICAgICAgIFsuLi5tdXRhdGlvbi5hZGRlZE5vZGVzXVxuICAgICAgICAgICAgLy8gdGV4dCBub2RlcyBkbyBub3QgaGF2ZSBxdWVyeVNlbGVjdG9yIG1ldGhvZFxuICAgICAgICAgICAgLmZpbHRlcigobm9kZSkgPT4gbm9kZS50YWdOYW1lID09PSAnRk9STScgfHwgKG5vZGUucXVlcnlTZWxlY3RvciAmJiBub2RlLnF1ZXJ5U2VsZWN0b3IoJ2Zvcm0nKSkpXG4gICAgICAgICAgICAuZm9yRWFjaCgoZSkgPT4gdHJhY2tGb3JtKGUucXVlcnlTZWxlY3RvcignZm9ybScpIHx8IGUpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBTdGFydCBvYnNlcnZpbmcgdGhlIGRvY3VtZW50IGZvciBmb3JtIGFkZGl0aW9uc1xuICAgIHJvb3RNby5vYnNlcnZlKGRvY3VtZW50LmJvZHksIHtcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIGF0dHJpYnV0ZXM6IGZhbHNlLFxuICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICB9KTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImdldFN1Ym1pdFR5cGUiLCJlbCIsInRhZ05hbWUiLCJ1bmRlZmluZWQiLCJnZXRBdHRyaWJ1dGUiLCJxdWVyeVNlbGVjdG9yIiwicHdDb3VudCIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJsZW5ndGgiLCJyb290TW8iLCJhZGRGb3JtVHJhY2tpbmciLCJjcmVhdGVNTyIsInNhbXBsZVJVTSIsInNvdXJjZVNlbGVjdG9yIiwidGFyZ2V0U2VsZWN0b3IiLCJjb250ZXh0IiwiZ2V0SW50ZXJzZWN0aW9uT2JzZXJ2ZXIiLCJ0cmFja0Zvcm0iLCJmb3JtIiwiYWRkRXZlbnRMaXN0ZW5lciIsImUiLCJpbnZhbGlkRmllbGRzIiwiZm9yRWFjaCIsImZpZWxkIiwidmFsaWRpdHkiLCJwcm90b3R5cGUiLCJPYmplY3QiLCJnZXRQcm90b3R5cGVPZiIsImVycm9yVHlwZSIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZmlsdGVyIiwia2V5Iiwic3RhcnRzV2l0aCIsImZpbmQiLCJ0YXJnZXQiLCJzb3VyY2UiLCJvbmNlIiwib2JzZXJ2ZSIsImxhc3RTb3VyY2UiLCJjaGVja1Zpc2liaWxpdHkiLCJpbmNsdWRlcyIsIm11dGF0aW9uTGlzdCIsIm11dGF0aW9uIiwiYWRkZWROb2RlcyIsIm5vZGUiLCJkb2N1bWVudCIsImJvZHkiLCJjaGlsZExpc3QiLCJhdHRyaWJ1dGVzIiwic3VidHJlZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFZTyxNQUFNQSxhQUFhLEdBQUlDLEVBQUUsSUFBSztFQUNuQyxJQUFJLENBQUNBLEVBQUUsSUFBSUEsRUFBRSxDQUFDQyxPQUFPLEtBQUssTUFBTSxFQUFFLE9BQU9DLFNBQVM7QUFFbEQsRUFBQSxJQUFJRixFQUFFLENBQUNHLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxRQUFRLElBQ25DSCxFQUFFLENBQUNJLGFBQWEsQ0FBQywrQ0FBK0MsQ0FBQyxFQUFFLE9BQU8sUUFBUTtFQUd2RixNQUFNQyxPQUFPLEdBQUdMLEVBQUUsQ0FBQ00sZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsQ0FBQ0MsTUFBTTtBQUNwRSxFQUFBLElBQUlGLE9BQU8sS0FBSyxDQUFDLEVBQUUsT0FBTyxPQUFPO0FBQ2pDLEVBQUEsSUFBSUEsT0FBTyxHQUFHLENBQUMsRUFBRSxPQUFPLFFBQVE7QUFDaEMsRUFBQSxPQUFPLFlBQVk7QUFDckI7QUFFQSxJQUFJRyxNQUFNLEdBQUcsSUFBSTtBQUVGLFNBQVNDLGVBQWVBLENBQUM7RUFDdENDLFFBQVE7RUFDUkMsU0FBUztFQUFFQyxjQUFjO0VBQUVDLGNBQWM7RUFBRUMsT0FBTztBQUFFQyxFQUFBQTtBQUN0RCxDQUFDLEVBQUU7RUFHRCxTQUFTQyxTQUFTQSxDQUFDQyxJQUFJLEVBQUU7QUFDdkJBLElBQUFBLElBQUksQ0FBQ0MsZ0JBQWdCLENB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
94
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tYXAuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3BsdWdpbnMvZm9ybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjQgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0IGNvbnN0IGdldFN1Ym1pdFR5cGUgPSAoZWwpID0+IHtcbiAgaWYgKCFlbCB8fCBlbC50YWdOYW1lICE9PSAnRk9STScpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGlmIChlbC5nZXRBdHRyaWJ1dGUoJ3JvbGUnKSA9PT0gJ3NlYXJjaCdcbiAgICB8fCBlbC5xdWVyeVNlbGVjdG9yKCdpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBpbnB1dFtyb2xlPVwic2VhcmNoYm94XCJdJykpIHtcbiAgICByZXR1cm4gJ3NlYXJjaCc7XG4gIH1cbiAgY29uc3QgcHdDb3VudCA9IGVsLnF1ZXJ5U2VsZWN0b3JBbGwoJ2lucHV0W3R5cGU9XCJwYXNzd29yZFwiXScpLmxlbmd0aDtcbiAgcmV0dXJuIChwd0NvdW50ID09PSAxICYmICdsb2dpbicpIHx8IChwd0NvdW50ID4gMSAmJiAnc2lnbnVwJykgfHwgJ2Zvcm1zdWJtaXQnO1xufTtcblxubGV0IHJvb3RNbyA9IG51bGw7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFkZEZvcm1UcmFja2luZyh7XG4gIGNyZWF0ZU1PLFxuICBzYW1wbGVSVU0sIHNvdXJjZVNlbGVjdG9yLCB0YXJnZXRTZWxlY3RvciwgY29udGV4dCwgZ2V0SW50ZXJzZWN0aW9uT2JzZXJ2ZXIsXG59KSB7XG4gIC8vIFRyYWNrIGV4aXN0aW5nIGZvcm1zXG5cbiAgZnVuY3Rpb24gdHJhY2tGb3JtKGZvcm0pIHtcbiAgICBmb3JtLmFkZEV2ZW50TGlzdGVuZXIoJ3N1Ym1pdCcsIChlKSA9PiB7XG4gICAgICAvLyBDaGVjayBmb3IgZm9ybSB2YWxpZGF0aW9uIGVycm9ycyBiZWZvcmUgc3VibWl0dGluZ1xuICAgICAgY29uc3QgaW52YWxpZEZpZWxkcyA9IGZvcm0ucXVlcnlTZWxlY3RvckFsbCgnOmludmFsaWQnKTtcbiAgICAgIC8vIFNlbmQgZXJyb3IgY2hlY2twb2ludHMgZm9yIGVhY2ggaW52YWxpZCBmaWVsZFxuICAgICAgaW52YWxpZEZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICBpZiAoZmllbGQgJiYgZmllbGQudmFsaWRpdHkpIHtcbiAgICAgICAgICBjb25zdCBwcm90b3R5cGUgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoZmllbGQudmFsaWRpdHkpO1xuICAgICAgICAgIGNvbnN0IGVycm9yVHlwZSA9IHByb3RvdHlwZVxuICAgICAgICAgICAgPyBPYmplY3Qua2V5cyhPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhwcm90b3R5cGUpKVxuICAgICAgICAgICAgICAuZmlsdGVyKChrZXkpID0+IGtleSAhPT0gJ3ZhbGlkJyAmJiBrZXkgIT09ICdjb25zdHJ1Y3RvcicgJiYgIWtleS5zdGFydHNXaXRoKCdTeW1ib2wnKSlcbiAgICAgICAgICAgICAgLmZpbmQoKGtleSkgPT4gZmllbGQudmFsaWRpdHlba2V5XSkgfHwgJ2N1c3RvbSdcbiAgICAgICAgICAgIDogJ2N1c3RvbSc7XG5cbiAgICAgICAgICBzYW1wbGVSVU0oJ2Vycm9yJywge1xuICAgICAgICAgICAgdGFyZ2V0OiBlcnJvclR5cGUsXG4gICAgICAgICAgICBzb3VyY2U6IHNvdXJjZVNlbGVjdG9yKGZpZWxkKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICAvLyBPbmx5IHNlbmQgZm9ybXN1Ym1pdCBldmVudCBpZiB0aGVyZSBhcmUgbm8gdmFsaWRhdGlvbiBlcnJvcnNcbiAgICAgIGlmIChpbnZhbGlkRmllbGRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBzYW1wbGVSVU0oZ2V0U3VibWl0VHlwZShlLnRhcmdldCksIHtcbiAgICAgICAgICB0YXJnZXQ6IHRhcmdldFNlbGVjdG9yKGUudGFyZ2V0KSxcbiAgICAgICAgICBzb3VyY2U6IHNvdXJjZVNlbGVjdG9yKGUudGFyZ2V0KSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSwgeyBvbmNlOiB0cnVlIH0pO1xuXG4gICAgZ2V0SW50ZXJzZWN0aW9uT2JzZXJ2ZXIoJ3ZpZXdibG9jaycpLm9ic2VydmUoZm9ybSk7XG4gICAgbGV0IGxhc3RTb3VyY2U7XG4gICAgZm9ybS5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCAoZSkgPT4ge1xuICAgICAgaWYgKGUudGFyZ2V0LmNoZWNrVmlzaWJpbGl0eSAmJiBlLnRhcmdldC5jaGVja1Zpc2liaWxpdHkoKSkge1xuICAgICAgICBjb25zdCBzb3VyY2UgPSBzb3VyY2VTZWxlY3RvcihlLnRhcmdldCk7XG4gICAgICAgIGlmIChzb3VyY2UgIT09IGxhc3RTb3VyY2UpIHtcbiAgICAgICAgICBzYW1wbGVSVU0oJ2ZpbGwnLCB7IHNvdXJjZSB9KTtcbiAgICAgICAgICBsYXN0U291cmNlID0gc291cmNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgZm9ybS5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgKGUpID0+IHtcbiAgICAgIGlmIChbJ0lOUFVUJywgJ1RFWFRBUkVBJywgJ1NFTEVDVCcsICdCVVRUT04nXS5pbmNsdWRlcyhlLnRhcmdldC50YWdOYW1lKVxuICAgICAgICB8fCBlLnRhcmdldC5nZXRBdHRyaWJ1dGUoJ2NvbnRlbnRlZGl0YWJsZScpID09PSAndHJ1ZScpIHtcbiAgICAgICAgc2FtcGxlUlVNKCdjbGljaycsIHsgc291cmNlOiBzb3VyY2VTZWxlY3RvcihlLnRhcmdldCkgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBjb250ZXh0LnF1ZXJ5U2VsZWN0b3JBbGwoJ2Zvcm0nKS5mb3JFYWNoKChmb3JtKSA9PiB7XG4gICAgdHJhY2tGb3JtKGZvcm0pO1xuICB9KTtcblxuICAvLyBDcmVhdGUgbXV0YXRpb24gb2JzZXJ2ZXIgdG8gdHJhY2sgZHluYW1pY2FsbHkgYWRkZWQgZm9ybXNcbiAgaWYgKCFyb290TW8pIHtcbiAgICByb290TW8gPSBjcmVhdGVNTygobXV0YXRpb25MaXN0KSA9PiB7XG4gICAgICBtdXRhdGlvbkxpc3QuZm9yRWFjaCgobXV0YXRpb24pID0+IHtcbiAgICAgICAgaWYgKG11dGF0aW9uLmFkZGVkTm9kZXMpIHtcbiAgICAgICAgICBbLi4ubXV0YXRpb24uYWRkZWROb2Rlc11cbiAgICAgICAgICAgIC8vIHRleHQgbm9kZXMgZG8gbm90IGhhdmUgcXVlcnlTZWxlY3RvciBtZXRob2RcbiAgICAgICAgICAgIC5maWx0ZXIoKG5vZGUpID0+IG5vZGUudGFnTmFtZSA9PT0gJ0ZPUk0nIHx8IChub2RlLnF1ZXJ5U2VsZWN0b3IgJiYgbm9kZS5xdWVyeVNlbGVjdG9yKCdmb3JtJykpKVxuICAgICAgICAgICAgLmZvckVhY2goKGUpID0+IHRyYWNrRm9ybShlLnF1ZXJ5U2VsZWN0b3IoJ2Zvcm0nKSB8fCBlKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgLy8gU3RhcnQgb2JzZXJ2aW5nIHRoZSBkb2N1bWVudCBmb3IgZm9ybSBhZGRpdGlvbnNcbiAgICByb290TW8ub2JzZXJ2ZShkb2N1bWVudC5ib2R5LCB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBhdHRyaWJ1dGVzOiBmYWxzZSxcbiAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgfSk7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJnZXRTdWJtaXRUeXBlIiwiZWwiLCJ0YWdOYW1lIiwidW5kZWZpbmVkIiwiZ2V0QXR0cmlidXRlIiwicXVlcnlTZWxlY3RvciIsInB3Q291bnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwibGVuZ3RoIiwicm9vdE1vIiwiYWRkRm9ybVRyYWNraW5nIiwiY3JlYXRlTU8iLCJzYW1wbGVSVU0iLCJzb3VyY2VTZWxlY3RvciIsInRhcmdldFNlbGVjdG9yIiwiY29udGV4dCIsImdldEludGVyc2VjdGlvbk9ic2VydmVyIiwidHJhY2tGb3JtIiwiZm9ybSIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwiaW52YWxpZEZpZWxkcyIsImZvckVhY2giLCJmaWVsZCIsInZhbGlkaXR5IiwicHJvdG90eXBlIiwiT2JqZWN0IiwiZ2V0UHJvdG90eXBlT2YiLCJlcnJvclR5cGUiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImZpbHRlciIsImtleSIsInN0YXJ0c1dpdGgiLCJmaW5kIiwidGFyZ2V0Iiwic291cmNlIiwib25jZSIsIm9ic2VydmUiLCJsYXN0U291cmNlIiwiY2hlY2tWaXNpYmlsaXR5IiwiaW5jbHVkZXMiLCJtdXRhdGlvbkxpc3QiLCJtdXRhdGlvbiIsImFkZGVkTm9kZXMiLCJub2RlIiwiZG9jdW1lbnQiLCJib2R5IiwiY2hpbGRMaXN0IiwiYXR0cmlidXRlcyIsInN1YnRyZWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBWU8sTUFBTUEsYUFBYSxHQUFJQyxFQUFFLElBQUs7RUFDbkMsSUFBSSxDQUFDQSxFQUFFLElBQUlBLEVBQUUsQ0FBQ0MsT0FBTyxLQUFLLE1BQU0sRUFBRTtBQUNoQyxJQUFBLE9BQU9DLFNBQVM7QUFDbEIsRUFBQTtBQUNBLEVBQUEsSUFBSUYsRUFBRSxDQUFDRyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssUUFBUSxJQUNuQ0gsRUFBRSxDQUFDSSxhQUFhLENBQUMsK0NBQStDLENBQUMsRUFBRTtBQUN0RSxJQUFBLE9BQU8sUUFBUTtBQUNqQixFQUFBO0VBQ0EsTUFBTUMsT0FBTyxHQUFHTCxFQUFFLENBQUNNLGdCQUFnQixDQUFDLHdCQUF3QixDQUFDLENBQUNDLE1BQU07QUFDcEUsRUFBQSxPQUFRRixPQUFPLEtBQUssQ0FBQyxJQUFJLE9BQU8sSUFBTUEsT0FBTyxHQUFHLENBQUMsSUFBSSxRQUFTLElBQUksWUFBWTtBQUNoRjtBQUVBLElBQUlHLE1BQU0sR0FBRyxJQUFJO0FBRUYsU0FBU0MsZUFBZUEsQ0FBQztFQUN0Q0MsUUFBUTtFQUNSQyxTQUFTO0VBQUVDLGNBQWM7RUFBRUMsY0FBYztFQUFFQyxPQUFPO0FBQUVDLEVBQUFBO0FBQ3RELENBQUMsRUFBRTtFQUdELFNBQVNDLFNBQVNBLENBQUNDLElBQUksRUFBRTtBQUN2QkEsSUFBQUEsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUdDLENBQUMsSUFBSztBQUVyQyxNQUFBLE1BQU1DLGFBQWEsR0FBR0gsSUFBSSxDQUFDWCxnQkFBZ0IsQ0FBQyxVQUFVLENBQUM7QUFFdkRjLE1BQUFBLGFBQWEsQ0FBQ0MsT0FBTyxDQUFFQyxLQUFLLElBQUs7QUFDL0IsUUFBQSxJQUFJQSxLQUFLLElBQUlBLEtBQUssQ0FBQ0MsUUFBUSxFQUFFO1VBQzNCLE1B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
@@ -1 +1 @@
1
- 3ef39d6c29619ddd5c5aaa77d2ce54d7
1
+ 7bff6e6d746e07b40c98e381a380fd57
@@ -1 +1 @@
1
- 5a20c1d914d19b130034e4df532b8b4d
1
+ 866b5825b7bdb273170fbab6fa8099bb
@@ -1 +1 @@
1
- 4b5cf6c41be188be11c519f419592e7e
1
+ c00518b019647f564ce00dce9d07c74b
@@ -1 +1 @@
1
- ffe06266f271e876a25169b3b9aeb664
1
+ f7be09c5b13268f51780ee91d44006bd
@@ -1 +1 @@
1
- b4b27fd1bc3bb7a309c377448c22529c
1
+ 907a29e9b683d52ab45c0fc02038916e
@@ -1 +1 @@
1
- 90fa0790108137f0cb4c44345d2e577f
1
+ 20d1f82b8a8c89e965f951484f200f35
@@ -1 +1 @@
1
- 69d98a5cc1e1f11f6bedc2dbe91d8f8f
1
+ 3476ee246a6b4c1599651d8a7580e2c7
@@ -74,7 +74,7 @@ export default {
74
74
  context.url = '/node_modules/@adobe/helix-rum-js/dist/rum-standalone.js';
75
75
  await next();
76
76
  context.body = context.body
77
- .replace(/const weight =/, 'const weight = 1 ||')
77
+ .replace(/const weight = .*?;/, 'const weight = 1;')
78
78
  .replace(/navigator\.sendBeacon/g, 'fakeSendBeacon')
79
79
  // eslint-disable-next-line no-template-curly-in-string
80
80
  .replace('.rum/@adobe/helix-rum-enhancer@${enhancerVersion || \'^2\'}/src/index.js', 'src/index.map.js');