@elastic/synthetics 1.24.4 → 1.26.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 (119) hide show
  1. package/README.md +67 -0
  2. package/dist/cli.js +3 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/common_types.d.ts +25 -0
  5. package/dist/common_types.d.ts.map +1 -1
  6. package/dist/core/certs.d.ts +55 -0
  7. package/dist/core/certs.d.ts.map +1 -0
  8. package/dist/core/certs.js +111 -0
  9. package/dist/core/certs.js.map +1 -0
  10. package/dist/core/gatherer.d.ts +4 -4
  11. package/dist/core/gatherer.d.ts.map +1 -1
  12. package/dist/core/gatherer.js +44 -7
  13. package/dist/core/gatherer.js.map +1 -1
  14. package/dist/core/globals.js +1 -1
  15. package/dist/core/index.d.ts +2 -1
  16. package/dist/core/index.d.ts.map +1 -1
  17. package/dist/core/index.js +16 -1
  18. package/dist/core/index.js.map +1 -1
  19. package/dist/core/runner.d.ts +1 -1
  20. package/dist/core/runner.d.ts.map +1 -1
  21. package/dist/core/runner.js +87 -58
  22. package/dist/core/runner.js.map +1 -1
  23. package/dist/dsl/api-journey.d.ts +62 -0
  24. package/dist/dsl/api-journey.d.ts.map +1 -0
  25. package/dist/dsl/api-journey.js +55 -0
  26. package/dist/dsl/api-journey.js.map +1 -0
  27. package/dist/dsl/index.d.ts +1 -0
  28. package/dist/dsl/index.d.ts.map +1 -1
  29. package/dist/dsl/index.js +1 -0
  30. package/dist/dsl/index.js.map +1 -1
  31. package/dist/dsl/journey.d.ts +10 -2
  32. package/dist/dsl/journey.d.ts.map +1 -1
  33. package/dist/dsl/journey.js +11 -2
  34. package/dist/dsl/journey.js.map +1 -1
  35. package/dist/dsl/monitor.d.ts +2 -1
  36. package/dist/dsl/monitor.d.ts.map +1 -1
  37. package/dist/dsl/monitor.js.map +1 -1
  38. package/dist/index.d.ts +2 -2
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +2 -1
  41. package/dist/index.js.map +1 -1
  42. package/dist/loader.d.ts.map +1 -1
  43. package/dist/loader.js +66 -1
  44. package/dist/loader.js.map +1 -1
  45. package/dist/network-timings.d.ts +55 -0
  46. package/dist/network-timings.d.ts.map +1 -0
  47. package/dist/network-timings.js +107 -0
  48. package/dist/network-timings.js.map +1 -0
  49. package/dist/options.d.ts +1 -0
  50. package/dist/options.d.ts.map +1 -1
  51. package/dist/options.js +16 -0
  52. package/dist/options.js.map +1 -1
  53. package/dist/plugins/api-network.d.ts +39 -0
  54. package/dist/plugins/api-network.d.ts.map +1 -0
  55. package/dist/plugins/api-network.js +235 -0
  56. package/dist/plugins/api-network.js.map +1 -0
  57. package/dist/plugins/network.d.ts +0 -6
  58. package/dist/plugins/network.d.ts.map +1 -1
  59. package/dist/plugins/network.js +5 -70
  60. package/dist/plugins/network.js.map +1 -1
  61. package/dist/plugins/plugin-manager.d.ts +11 -4
  62. package/dist/plugins/plugin-manager.d.ts.map +1 -1
  63. package/dist/plugins/plugin-manager.js +36 -16
  64. package/dist/plugins/plugin-manager.js.map +1 -1
  65. package/dist/push/index.d.ts.map +1 -1
  66. package/dist/push/index.js +4 -0
  67. package/dist/push/index.js.map +1 -1
  68. package/dist/push/monitor.d.ts.map +1 -1
  69. package/dist/push/monitor.js +1 -1
  70. package/dist/push/monitor.js.map +1 -1
  71. package/dist/push/run-local.d.ts.map +1 -1
  72. package/dist/push/run-local.js +15 -3
  73. package/dist/push/run-local.js.map +1 -1
  74. package/dist/push/utils.d.ts +7 -0
  75. package/dist/push/utils.d.ts.map +1 -1
  76. package/dist/push/utils.js +15 -1
  77. package/dist/push/utils.js.map +1 -1
  78. package/dist/reporters/base.d.ts +2 -2
  79. package/dist/reporters/base.d.ts.map +1 -1
  80. package/dist/reporters/base.js.map +1 -1
  81. package/dist/reporters/index.d.ts +2 -2
  82. package/dist/reporters/index.d.ts.map +1 -1
  83. package/dist/reporters/index.js.map +1 -1
  84. package/dist/reporters/json.d.ts +6 -2
  85. package/dist/reporters/json.d.ts.map +1 -1
  86. package/dist/reporters/json.js +68 -33
  87. package/dist/reporters/json.js.map +1 -1
  88. package/package.json +11 -21
  89. package/src/cli.ts +3 -0
  90. package/src/common_types.ts +34 -0
  91. package/src/core/certs.ts +122 -0
  92. package/src/core/gatherer.ts +63 -10
  93. package/src/core/globals.ts +1 -1
  94. package/src/core/index.ts +28 -0
  95. package/src/core/runner.ts +94 -67
  96. package/src/dsl/api-journey.ts +93 -0
  97. package/src/dsl/index.ts +1 -0
  98. package/src/dsl/journey.ts +21 -9
  99. package/src/dsl/monitor.ts +2 -0
  100. package/src/index.ts +6 -0
  101. package/src/loader.ts +78 -2
  102. package/src/network-timings.ts +130 -0
  103. package/src/options.ts +25 -0
  104. package/src/plugins/api-network.ts +252 -0
  105. package/src/plugins/network.ts +5 -87
  106. package/src/plugins/plugin-manager.ts +60 -19
  107. package/src/push/index.ts +11 -0
  108. package/src/push/monitor.ts +6 -2
  109. package/src/push/run-local.ts +25 -15
  110. package/src/push/utils.ts +15 -0
  111. package/src/reporters/base.ts +2 -1
  112. package/src/reporters/index.ts +2 -1
  113. package/src/reporters/json.ts +74 -41
  114. package/templates/README.md +3 -1
  115. package/templates/journeys/advanced-api-example-helpers.ts +79 -0
  116. package/templates/journeys/advanced-api-example.journey.ts +52 -0
  117. package/templates/journeys/api-example.journey.ts +35 -0
  118. package/templates/synthetics.config.ts +2 -0
  119. package/.husky/install.mjs +0 -7
package/dist/index.d.ts CHANGED
@@ -29,7 +29,7 @@ export declare function run(options: RunOptions): Promise<{
29
29
  /**
30
30
  * Export all core module functions
31
31
  */
32
- export { journey, step, monitor, beforeAll, afterAll, before, after, } from './core';
32
+ export { journey, apiJourney, step, monitor, beforeAll, afterAll, before, after, } from './core';
33
33
  export { expect } from './core/expect';
34
34
  export * as mfa from './core/mfa';
35
35
  /**
@@ -44,6 +44,6 @@ export { devices, request } from 'playwright-core';
44
44
  export type { default as Runner } from './core/runner';
45
45
  export type { Reporter, ReporterOptions } from './reporters';
46
46
  export type { SyntheticsConfig, StepEndResult, JourneyEndResult, JourneyStartResult, JourneyResult, StepResult, StartEvent, } from './common_types';
47
- export type { Journey, JourneyCallback, JourneyWithAnnotations, JourneyOptions, StepWithAnnotations, } from './dsl';
47
+ export type { Journey, JourneyCallback, JourneyWithAnnotations, JourneyOptions, StepWithAnnotations, APIJourney, APIJourneyCallback, APIJourneyCallbackOpts, APIJourneyOptions, APIJourneyWithAnnotations, } from './dsl';
48
48
  export type { Action, ActionInContext, FrameDescription, Signal, Step, Steps, actionTitle, } from './formatter/javascript';
49
49
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU;;GAE5C;AAED;;GAEG;AACH,OAAO,EACL,OAAO,EACP,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,GACN,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,YAAY,CAAC;AAElC;;;GAGG;AACH,YAAY,EACV,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;GAEG;AACH,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,OAAO,EACP,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,mBAAmB,GACpB,MAAM,OAAO,CAAC;AAEf,YAAY,EACV,MAAM,EACN,eAAe,EACf,gBAAgB,EAChB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,WAAW,GACZ,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU;;GAE5C;AAED;;GAEG;AACH,OAAO,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,GACN,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,YAAY,CAAC;AAElC;;;GAGG;AACH,YAAY,EACV,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;GAEG;AACH,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,OAAO,EACP,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,OAAO,CAAC;AAEf,YAAY,EACV,MAAM,EACN,eAAe,EACf,gBAAgB,EAChB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,WAAW,GACZ,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -47,7 +47,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
47
47
  return result;
48
48
  };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.request = exports.devices = exports.mfa = exports.expect = exports.after = exports.before = exports.afterAll = exports.beforeAll = exports.monitor = exports.step = exports.journey = exports.run = void 0;
50
+ exports.request = exports.devices = exports.mfa = exports.expect = exports.after = exports.before = exports.afterAll = exports.beforeAll = exports.monitor = exports.step = exports.apiJourney = exports.journey = exports.run = void 0;
51
51
  const globals_1 = require("./core/globals");
52
52
  async function run(options) {
53
53
  return globals_1.runner._run(options);
@@ -58,6 +58,7 @@ exports.run = run;
58
58
  */
59
59
  var core_1 = require("./core");
60
60
  Object.defineProperty(exports, "journey", { enumerable: true, get: function () { return core_1.journey; } });
61
+ Object.defineProperty(exports, "apiJourney", { enumerable: true, get: function () { return core_1.apiJourney; } });
61
62
  Object.defineProperty(exports, "step", { enumerable: true, get: function () { return core_1.step; } });
62
63
  Object.defineProperty(exports, "monitor", { enumerable: true, get: function () { return core_1.monitor; } });
63
64
  Object.defineProperty(exports, "beforeAll", { enumerable: true, get: function () { return core_1.beforeAll; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAwC;AAGjC,KAAK,UAAU,GAAG,CAAC,OAAmB;IAC3C,OAAO,gBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAFD,kBAEC;AAED;;GAEG;AACH,+BAQgB;AAPd,+FAAA,OAAO,OAAA;AACP,4FAAA,IAAI,OAAA;AACJ,+FAAA,OAAO,OAAA;AACP,iGAAA,SAAS,OAAA;AACT,gGAAA,QAAQ,OAAA;AACR,8FAAA,MAAM,OAAA;AACN,6FAAA,KAAK,OAAA;AAEP,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,kDAAkC;AAelC,mDAAmD;AAA1C,0GAAA,OAAO,OAAA;AAAE,0GAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAwC;AAGjC,KAAK,UAAU,GAAG,CAAC,OAAmB;IAC3C,OAAO,gBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAFD,kBAEC;AAED;;GAEG;AACH,+BASgB;AARd,+FAAA,OAAO,OAAA;AACP,kGAAA,UAAU,OAAA;AACV,4FAAA,IAAI,OAAA;AACJ,+FAAA,OAAO,OAAA;AACP,iGAAA,SAAS,OAAA;AACT,gGAAA,QAAQ,OAAA;AACR,8FAAA,MAAM,OAAA;AACN,6FAAA,KAAK,OAAA;AAEP,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,kDAAkC;AAelC,mDAAmD;AAA1C,0GAAA,OAAO,OAAA;AAAE,0GAAA,OAAO,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAgBzC;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uBAMjE;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,iBA0BnE"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAgBzC;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,uBAMjE;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,iBA0BnE"}
package/dist/loader.js CHANGED
@@ -46,10 +46,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
46
46
  __setModuleDefault(result, mod);
47
47
  return result;
48
48
  };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
49
52
  Object.defineProperty(exports, "__esModule", { value: true });
50
53
  exports.loadTestFiles = exports.globalSetup = void 0;
51
54
  const process_1 = require("process");
52
55
  const path_1 = require("path");
56
+ const os_1 = require("os");
57
+ const fs_1 = require("fs");
58
+ const module_1 = __importDefault(require("module"));
53
59
  const core_1 = require("./core");
54
60
  const logger_1 = require("./core/logger");
55
61
  const expect_1 = require("./core/expect");
@@ -99,7 +105,20 @@ async function loadTestFiles(options, args) {
99
105
  requireSuites(suites);
100
106
  }
101
107
  exports.loadTestFiles = loadTestFiles;
102
- const loadInlineScript = source => {
108
+ /**
109
+ * A leading `import`/`export` opts the inline source into module loading;
110
+ * anything else is treated as legacy statements with injected locals.
111
+ * Keying off `import`/`export` (not a `journey(` regex) avoids false
112
+ * matches inside strings/comments that would strip the implicit injection.
113
+ */
114
+ const isModuleInlineSource = (source) => {
115
+ return /^\s*(?:import|export)\b/m.test(source);
116
+ };
117
+ const loadInlineScript = (source) => {
118
+ if (isModuleInlineSource(source)) {
119
+ loadInlineModule(source);
120
+ return;
121
+ }
103
122
  const scriptFn = new Function('step', 'page', 'context', 'browser', 'params', 'expect', 'request', 'mfa', source);
104
123
  (0, core_1.journey)('inline', ({ page, context, browser, params, request }) => {
105
124
  scriptFn.apply(null, [
@@ -114,6 +133,52 @@ const loadInlineScript = source => {
114
133
  ]);
115
134
  });
116
135
  };
136
+ const SYNTHETICS_PKG_ROOT = (0, path_1.resolve)(__dirname, '..');
137
+ let syntheticsAliasInstalled = false;
138
+ /**
139
+ * Alias `@elastic/synthetics` (and subpaths) to this package so an inline
140
+ * module materialised in a temp dir — whose ancestors may lack a
141
+ * `node_modules` entry — resolves to the currently running code.
142
+ */
143
+ const installSyntheticsRequireAlias = () => {
144
+ if (syntheticsAliasInstalled)
145
+ return;
146
+ syntheticsAliasInstalled = true;
147
+ const PKG = '@elastic/synthetics';
148
+ const ModuleInternal = module_1.default;
149
+ const originalResolve = ModuleInternal._resolveFilename;
150
+ ModuleInternal._resolveFilename = function (request, parent, isMain, options) {
151
+ if (request === PKG || request.startsWith(`${PKG}/`)) {
152
+ const subpath = request === PKG ? '' : request.slice(PKG.length + 1);
153
+ const aliased = subpath
154
+ ? (0, path_1.join)(SYNTHETICS_PKG_ROOT, subpath)
155
+ : SYNTHETICS_PKG_ROOT;
156
+ return originalResolve.call(this, aliased, parent, isMain, options);
157
+ }
158
+ return originalResolve.call(this, request, parent, isMain, options);
159
+ };
160
+ };
161
+ /**
162
+ * Materialise a self-contained inline module to disk and `require` it. The
163
+ * esbuild transform hook rewrites ESM → CJS, so the script registers its
164
+ * journeys on import instead of being wrapped in an implicit journey.
165
+ */
166
+ const loadInlineModule = (source) => {
167
+ installSyntheticsRequireAlias();
168
+ const dir = (0, fs_1.mkdtempSync)((0, path_1.join)((0, os_1.tmpdir)(), 'synthetics-inline-'));
169
+ // Best-effort cleanup so long-lived hosts don't accumulate temp dirs.
170
+ process.once('exit', () => {
171
+ try {
172
+ (0, fs_1.rmSync)(dir, { recursive: true, force: true });
173
+ }
174
+ catch {
175
+ /* best-effort */
176
+ }
177
+ });
178
+ const file = (0, path_1.join)(dir, 'inline.journey.ts');
179
+ (0, fs_1.writeFileSync)(file, source);
180
+ require(file);
181
+ };
117
182
  /**
118
183
  * Read the input from STDIN and run it as inline journey
119
184
  */
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * MIT License
3
+ *
4
+ * Copyright (c) 2020-present, Elastic NV
5
+ *
6
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ * of this software and associated documentation files (the "Software"), to deal
8
+ * in the Software without restriction, including without limitation the rights
9
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ * copies of the Software, and to permit persons to whom the Software is
11
+ * furnished to do so, subject to the following conditions:
12
+ *
13
+ * The above copyright notice and this permission notice shall be included in
14
+ * all copies or substantial portions of the Software.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ * THE SOFTWARE.
23
+ *
24
+ */
25
+ import { Request } from 'playwright-core';
26
+ import { NetworkInfo } from './common_types';
27
+ /**
28
+ * Resource Timing shape shared by `Request.timing()` and (>= 1.62)
29
+ * `APIResponse.timing()`. Values are milliseconds relative to `startTime`,
30
+ * `-1` when a phase did not happen or is unknown (e.g. reused keep-alive
31
+ * socket, HAR replay).
32
+ */
33
+ export type ResourceTiming = ReturnType<Request['timing']>;
34
+ export declare const roundMilliSecs: (value: number) => number;
35
+ /**
36
+ * First positive number in the list, used to derive the `blocked` phase from
37
+ * whichever Resource Timing marker fired first.
38
+ */
39
+ export declare const firstPositive: (numbers: number[]) => number | null;
40
+ /**
41
+ * Maps a Playwright Resource Timing object into the per-phase `NetworkInfo`
42
+ * timings. `total` is left at `-1` for the caller to fill via `calcTotalTime`
43
+ * once `loadEndTime`/`requestSentTime` are known. `receive` resolves to `-1`
44
+ * until `responseEnd` is available (browser journeys learn it on
45
+ * `requestfinished`); API journeys have the full timing up front.
46
+ */
47
+ export declare function getResourceTimings(rtiming: ResourceTiming): NetworkInfo['timings'];
48
+ /**
49
+ * Returns the `total` phase by summing the positive phases. Falls back to the
50
+ * wall-clock span between `requestSentTime` and `loadEndTime` when Resource
51
+ * Timing data is unavailable (`startTime <= 0`, e.g. HAR replay or aborted
52
+ * requests). Pure — the caller assigns the result onto `timings.total`.
53
+ */
54
+ export declare function calcTotalTime(entry: NetworkInfo, rtiming: ResourceTiming): number;
55
+ //# sourceMappingURL=network-timings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-timings.d.ts","sourceRoot":"","sources":["../src/network-timings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE3D,eAAO,MAAM,cAAc,UAAW,MAAM,KAAG,MAE9C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,YAAa,MAAM,EAAE,KAAG,MAAM,GAAG,IAO1D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,GACtB,WAAW,CAAC,SAAS,CAAC,CAwCxB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,cAAc,GACtB,MAAM,CAgBR"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ /**
3
+ * MIT License
4
+ *
5
+ * Copyright (c) 2020-present, Elastic NV
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in
15
+ * all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ * THE SOFTWARE.
24
+ *
25
+ */
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.calcTotalTime = exports.getResourceTimings = exports.firstPositive = exports.roundMilliSecs = void 0;
28
+ const roundMilliSecs = (value) => {
29
+ return Math.floor(value * 1000) / 1000;
30
+ };
31
+ exports.roundMilliSecs = roundMilliSecs;
32
+ /**
33
+ * First positive number in the list, used to derive the `blocked` phase from
34
+ * whichever Resource Timing marker fired first.
35
+ */
36
+ const firstPositive = (numbers) => {
37
+ for (let i = 0; i < numbers.length; ++i) {
38
+ if (numbers[i] > 0) {
39
+ return numbers[i];
40
+ }
41
+ }
42
+ return null;
43
+ };
44
+ exports.firstPositive = firstPositive;
45
+ /**
46
+ * Maps a Playwright Resource Timing object into the per-phase `NetworkInfo`
47
+ * timings. `total` is left at `-1` for the caller to fill via `calcTotalTime`
48
+ * once `loadEndTime`/`requestSentTime` are known. `receive` resolves to `-1`
49
+ * until `responseEnd` is available (browser journeys learn it on
50
+ * `requestfinished`); API journeys have the full timing up front.
51
+ */
52
+ function getResourceTimings(rtiming) {
53
+ const blocked = (0, exports.roundMilliSecs)((0, exports.firstPositive)([
54
+ rtiming.domainLookupStart,
55
+ rtiming.connectStart,
56
+ rtiming.requestStart,
57
+ ])) || -1;
58
+ const dns = rtiming.domainLookupEnd !== -1
59
+ ? (0, exports.roundMilliSecs)(rtiming.domainLookupEnd - rtiming.domainLookupStart)
60
+ : -1;
61
+ const connect = rtiming.connectEnd !== -1
62
+ ? (0, exports.roundMilliSecs)(rtiming.connectEnd - rtiming.connectStart)
63
+ : -1;
64
+ const ssl = rtiming.secureConnectionStart !== -1
65
+ ? (0, exports.roundMilliSecs)(rtiming.connectEnd - rtiming.secureConnectionStart)
66
+ : -1;
67
+ const wait = rtiming.responseStart !== -1
68
+ ? (0, exports.roundMilliSecs)(rtiming.responseStart - rtiming.requestStart)
69
+ : -1;
70
+ const receive = rtiming.responseEnd !== -1
71
+ ? (0, exports.roundMilliSecs)(rtiming.responseEnd - rtiming.responseStart)
72
+ : -1;
73
+ return {
74
+ blocked,
75
+ dns,
76
+ ssl,
77
+ connect,
78
+ send: 0,
79
+ wait,
80
+ receive,
81
+ total: -1,
82
+ };
83
+ }
84
+ exports.getResourceTimings = getResourceTimings;
85
+ /**
86
+ * Returns the `total` phase by summing the positive phases. Falls back to the
87
+ * wall-clock span between `requestSentTime` and `loadEndTime` when Resource
88
+ * Timing data is unavailable (`startTime <= 0`, e.g. HAR replay or aborted
89
+ * requests). Pure — the caller assigns the result onto `timings.total`.
90
+ */
91
+ function calcTotalTime(entry, rtiming) {
92
+ if (rtiming.startTime <= 0) {
93
+ const end = entry.loadEndTime || entry.responseReceivedTime || entry.requestSentTime;
94
+ const total = (0, exports.roundMilliSecs)((end - entry.requestSentTime) * 1000);
95
+ return total <= 0 ? -1 : total;
96
+ }
97
+ const { timings } = entry;
98
+ return [
99
+ timings.blocked,
100
+ timings.dns,
101
+ timings.connect,
102
+ timings.wait,
103
+ timings.receive,
104
+ ].reduce((pre, cur) => ((cur || -1) > 0 ? cur + pre : pre), 0);
105
+ }
106
+ exports.calcTotalTime = calcTotalTime;
107
+ //# sourceMappingURL=network-timings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network-timings.js","sourceRoot":"","sources":["../src/network-timings.ts"],"names":[],"mappings":"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"}
package/dist/options.d.ts CHANGED
@@ -55,6 +55,7 @@ export declare function getCommonCommandOpts(): {
55
55
  match: import("commander").Option;
56
56
  fields: import("commander").Option;
57
57
  maintenanceWindows: import("commander").Option;
58
+ certificateErrorSpkiAllowlist: import("commander").Option;
58
59
  };
59
60
  export declare function parsePlaywrightOptions(playwrightOpts: string): any;
60
61
  export declare function parseFileOption(opt: string): (value: string) => string | Buffer;
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI1D,KAAK,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3B;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,OAAO,EAChB,IAAI,GAAE,IAAY,GACjB,OAAO,CAAC,UAAU,CAAC,CA6HrB;AAED,wBAAgB,eAAe,CAC7B,WAAW,EAAE,OAAO,EACpB,cAAc,CAAC,EAAE,OAAO,WAQzB;AAWD;;;;;;GAMG;AACH,wBAAgB,eAAe,SAE9B;AAED,wBAAgB,oBAAoB;;;;;;;;;;;EA2EnC;AAED,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,OAsB5D;AAUD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,WAC1B,MAAM,qBAWtB;AAID,wBAAgB,WAAW,CAAC,GAAG,KAAA,EAAE,WAAW,KAAA,EAAE,UAAU,CAAC,KAAA,uBAKxD"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAK1D,KAAK,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3B;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,OAAO,EAChB,IAAI,GAAE,IAAY,GACjB,OAAO,CAAC,UAAU,CAAC,CA+IrB;AAED,wBAAgB,eAAe,CAC7B,WAAW,EAAE,OAAO,EACpB,cAAc,CAAC,EAAE,OAAO,WAQzB;AAWD;;;;;;GAMG;AACH,wBAAgB,eAAe,SAE9B;AAED,wBAAgB,oBAAoB;;;;;;;;;;;;EAiFnC;AAED,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,OAsB5D;AAUD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,WAC1B,MAAM,qBAWtB;AAID,wBAAgB,WAAW,CAAC,GAAG,KAAA,EAAE,WAAW,KAAA,EAAE,UAAU,CAAC,KAAA,uBAKxD"}
package/dist/options.js CHANGED
@@ -32,6 +32,7 @@ const deepmerge_1 = __importDefault(require("deepmerge"));
32
32
  const commander_1 = require("commander");
33
33
  const config_1 = require("./config");
34
34
  const helpers_1 = require("./helpers");
35
+ const certs_1 = require("./core/certs");
35
36
  const fs_1 = require("fs");
36
37
  /**
37
38
  * Normalize the options passed via CLI and Synthetics config file
@@ -86,6 +87,19 @@ async function normalizeOptions(cliArgs, mode = 'run') {
86
87
  ignoreHTTPSErrors: cliArgs.ignoreHttpsErrors ?? playwrightOpts?.ignoreHTTPSErrors,
87
88
  };
88
89
  options.proxy = Object.freeze((0, deepmerge_1.default)(config?.proxy ?? {}, cliArgs?.proxy || {}));
90
+ /**
91
+ * Merge PEM certificates from the Synthetics config and the CLI. Each entry
92
+ * can be inline PEM content or a path to a PEM file that we resolve here so
93
+ * downstream consumers only ever deal with PEM strings used to build the
94
+ * Chromium SPKI certificate-error allowlist.
95
+ */
96
+ const certificateErrorSpkiAllowlist = [
97
+ ...(0, certs_1.normalizeCertificateErrorSpkiAllowlist)(config.certificateErrorSpkiAllowlist),
98
+ ...(0, certs_1.normalizeCertificateErrorSpkiAllowlist)(cliArgs.certificateErrorSpkiAllowlist),
99
+ ].map(entry => ((0, helpers_1.isFile)(entry) ? (0, fs_1.readFileSync)(entry, 'utf-8') : entry));
100
+ options.certificateErrorSpkiAllowlist = certificateErrorSpkiAllowlist.length
101
+ ? certificateErrorSpkiAllowlist
102
+ : undefined;
89
103
  /**
90
104
  * Merge default options based on the mode of operation whether we are running tests locally
91
105
  * or pushing the project monitors
@@ -205,6 +219,7 @@ function getCommonCommandOpts() {
205
219
  }, {});
206
220
  });
207
221
  const maintenanceWindows = (0, commander_1.createOption)('--maintenance-windows <ids...>', "List of Kibana's Maintenance Windows IDs assigned by default. More information on https://www.elastic.co/docs/explore-analyze/alerts-cases/alerts/maintenance-windows.");
222
+ const certificateErrorSpkiAllowlist = (0, commander_1.createOption)('--certificate-error-spki-allowlist <pathOrPem...>', "One or more PEM certificates, each provided as inline content or a path to a PEM file. Their SPKI hashes are used to bypass Chromium certificate errors for matching presented certificates; this does not add a CA to Chromium's trust store.");
208
223
  return {
209
224
  auth,
210
225
  authMandatory,
@@ -216,6 +231,7 @@ function getCommonCommandOpts() {
216
231
  match,
217
232
  fields,
218
233
  maintenanceWindows,
234
+ certificateErrorSpkiAllowlist,
219
235
  };
220
236
  }
221
237
  exports.getCommonCommandOpts = getCommonCommandOpts;
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;;;;AAEH,0DAA8B;AAC9B,yCAAyC;AACzC,qCAAsC;AAEtC,uCAAiE;AACjE,2BAAkC;AAIlC;;;;;;;GAOG;AACI,KAAK,UAAU,gBAAgB,CACpC,OAAgB,EAChB,OAAa,KAAK;IAElB;;;OAGG;IACH,MAAM,QAAQ,GAAG;QACf,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;IACF,OAAO,OAAO,CAAC,OAAO,CAAC;IACvB,OAAO,OAAO,CAAC,IAAI,CAAC;IACpB,OAAO,OAAO,CAAC,KAAK,CAAC;IAErB,MAAM,OAAO,GAAe;QAC1B,GAAG,OAAO;QACV,QAAQ;QACR,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,aAAa;KACtD,CAAC;IACF;;OAEG;IACH,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM;QAC/B,CAAC,CAAC,MAAM,IAAA,mBAAU,EAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;QACvD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAA,mBAAK,EAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAC5B,IAAA,mBAAK,EAAC,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC,CAC3D,CAAC;IAEF;;;OAGG;IACH,MAAM,cAAc,GAAG,IAAA,mBAAK,EAC1B,MAAM,CAAC,iBAAiB,EACxB,OAAO,CAAC,iBAAiB,IAAI,EAAE,EAC/B;QACE,UAAU,CAAC,MAAM,EAAE,MAAM;YACvB,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CACF,CAAC;IACF,OAAO,CAAC,iBAAiB,GAAG;QAC1B,GAAG,cAAc;QACjB,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,CAAC;QACrE,eAAe,EAAE,OAAO,CAAC,OAAO,IAAI,cAAc,EAAE,eAAe;QACnE,iBAAiB,EACf,OAAO,CAAC,iBAAiB,IAAI,cAAc,EAAE,iBAAiB;KACjE,CAAC;IAEF,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAC3B,IAAA,mBAAK,EAAC,MAAM,EAAE,KAAK,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CACjD,CAAC;IAEF;;;OAGG;IACH,QAAQ,IAAI,EAAE;QACZ,KAAK,KAAK;YACR,IAAI,OAAO,CAAC,UAAU,EAAE;gBACtB,MAAM,qBAAqB,GAAG;oBAC5B,OAAO;oBACP,SAAS;oBACT,YAAY;oBACZ,SAAS;oBACT,UAAU;iBACX,CAAC;gBACF;;;;;;mBAMG;gBACH,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE;oBACrC,IAAI,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;wBACxC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;qBACtB;yBAAM;wBACL,OAAO,CAAC,IAAI,CACV,uBAAuB,IAAI,yCAAyC,qBAAqB,CAAC,IAAI,CAC5F,IAAI,CACL,EAAE,CACJ,CAAC;qBACH;iBACF;aACF;YAED;;;eAGG;YACH,IAAI,OAAO,CAAC,UAAU,EAAE;gBACtB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC;gBAC9C,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACxB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;gBACvB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;gBACrB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;aAC9B;YAED,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;YAClD,MAAM;QACR,KAAK,MAAM;YACT;;;eAGG;YACH,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;gBAC5C,kEAAkE;gBAClE,IAAI,GAAG,KAAK,YAAY,EAAE;oBACxB,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC1D,SAAS;iBACV;gBACD,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;aAC7C;YACD,MAAM;KACT;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAhID,4CAgIC;AAED,SAAgB,eAAe,CAC7B,WAAoB,EACpB,cAAwB;IAExB,mEAAmE;IACnE,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,KAAK,CAAC;KACd;IACD,sBAAsB;IACtB,OAAO,cAAc,IAAI,IAAI,CAAC;AAChC,CAAC;AAVD,0CAUC;AAED,gEAAgE;AAChE,SAAS,QAAQ,CAAC,KAAoC;IACpD,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;QAC9B,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,KAAK,IAAI,SAAS,CAAC;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,eAAe;IAC7B,IAAA,cAAI,EAAC,gCAAsB,CAAC,CAAC;AAC/B,CAAC;AAFD,0CAEC;AAED,SAAgB,oBAAoB;IAClC,MAAM,MAAM,GAAG,IAAA,wBAAY,EACzB,2BAA2B,EAC3B,4DAA4D,CAC7D,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExB,MAAM,cAAc,GAAG,IAAA,wBAAY,EACjC,mCAAmC,EACnC,kKAAkK,CACnK,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IAEpC,MAAM,OAAO,GAAG,IAAA,wBAAY,EAC1B,qBAAqB,EACrB,wGAAwG,CACzG,CAAC;IAEF,MAAM,WAAW,GACf,sGAAsG,CAAC;IACzG,MAAM,IAAI,GAAG,IAAA,wBAAY,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC,GAAG,CACzD,oBAAoB,CACrB,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,wBAAY,EAAC,eAAe,EAAE,WAAW,CAAC;SAC7D,GAAG,CAAC,oBAAoB,CAAC;SACzB,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE7B,MAAM,SAAS,GAAG,IAAA,wBAAY,EAC5B,qBAAqB,EACrB,qEAAqE,CACtE,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,wBAAY,EACvB,kBAAkB,EAClB,mDAAmD,CACpD,CAAC;IACF,MAAM,KAAK,GAAG,IAAA,wBAAY,EACxB,gBAAgB,EAChB,2DAA2D,CAC5D,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,wBAAY,EACzB,uBAAuB,EACvB,8DAA8D,CAC/D,CAAC,SAAS,CAAC,CAAC,SAAiB,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;SAC1C;QACD,mCAAmC;QACnC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aAClC;iBAAM;gBACL,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aAClB;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,IAAA,wBAAY,EACrC,gCAAgC,EAChC,wKAAwK,CACzK,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,aAAa;QACb,MAAM;QACN,cAAc;QACd,OAAO;QACP,SAAS;QACT,IAAI;QACJ,KAAK;QACL,MAAM;QACN,kBAAkB;KACnB,CAAC;AACJ,CAAC;AA3ED,oDA2EC;AAED,SAAgB,sBAAsB,CAAC,cAAsB;IAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC/C,IAAI,GAAG,KAAK,oBAAoB,EAAE;YAChC,OAAO,KAAK,CAAC;SACd;QAED,sDAAsD;QACtD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5C,OAAO,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACzC;YACD,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAC1C,OAAO,CAAC,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACvC;YACD,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAC1C,OAAO,CAAC,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACvC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAtBD,wDAsBC;AAED,SAAS,aAAa,CAAC,KAAU;IAC/B,IAAI;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,CAAC,KAAa,EAAE,EAAE;QACvB,IAAI,CAAC,IAAA,gBAAM,EAAC,KAAK,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC;SACd;QAED,IAAI;YACF,OAAO,IAAA,iBAAY,EAAC,KAAK,CAAC,CAAC;SAC5B;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,mCAAmC,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;SACzE;IACH,CAAC,CAAC;AACJ,CAAC;AAZD,0CAYC;AAED,mEAAmE;AACnE,aAAa;AACb,SAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,UAAW;IACvD,OAAO,KAAK,CAAC,EAAE;QACb,WAAW,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,CAAC;AACJ,CAAC;AALD,kCAKC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * MIT License
3
+ *
4
+ * Copyright (c) 2020-present, Elastic NV
5
+ *
6
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ * of this software and associated documentation files (the "Software"), to deal
8
+ * in the Software without restriction, including without limitation the rights
9
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ * copies of the Software, and to permit persons to whom the Software is
11
+ * furnished to do so, subject to the following conditions:
12
+ *
13
+ * The above copyright notice and this permission notice shall be included in
14
+ * all copies or substantial portions of the Software.
15
+ *
16
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ * THE SOFTWARE.
23
+ *
24
+ */
25
+ import { NetworkInfo, APIDriver } from '../common_types';
26
+ import { Step } from '../dsl';
27
+ export declare class APINetworkManager {
28
+ private driver;
29
+ results: Array<NetworkInfo>;
30
+ _currentStep: Partial<Step> | null;
31
+ private _originalFetch?;
32
+ private _patched;
33
+ constructor(driver: APIDriver);
34
+ start(): Promise<void>;
35
+ private _interceptRequest;
36
+ private _restore;
37
+ stop(): Promise<NetworkInfo[]>;
38
+ }
39
+ //# sourceMappingURL=api-network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-network.d.ts","sourceRoot":"","sources":["../../src/plugins/api-network.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAGH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAuD9B,qBAAa,iBAAiB;IAMhB,OAAO,CAAC,MAAM;IAL1B,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAM;IACjC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAS;gBAEL,MAAM,EAAE,SAAS;IAE/B,KAAK;YAUG,iBAAiB;IA0H/B,OAAO,CAAC,QAAQ;IAOV,IAAI;CAKX"}