@elastic/synthetics 1.24.4 → 1.25.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.
- package/README.md +67 -0
- package/dist/common_types.d.ts +17 -0
- package/dist/common_types.d.ts.map +1 -1
- package/dist/core/gatherer.d.ts +4 -4
- package/dist/core/gatherer.d.ts.map +1 -1
- package/dist/core/gatherer.js +28 -7
- package/dist/core/gatherer.js.map +1 -1
- package/dist/core/globals.js +1 -1
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +16 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/runner.d.ts +1 -1
- package/dist/core/runner.d.ts.map +1 -1
- package/dist/core/runner.js +86 -58
- package/dist/core/runner.js.map +1 -1
- package/dist/dsl/api-journey.d.ts +62 -0
- package/dist/dsl/api-journey.d.ts.map +1 -0
- package/dist/dsl/api-journey.js +55 -0
- package/dist/dsl/api-journey.js.map +1 -0
- package/dist/dsl/index.d.ts +1 -0
- package/dist/dsl/index.d.ts.map +1 -1
- package/dist/dsl/index.js +1 -0
- package/dist/dsl/index.js.map +1 -1
- package/dist/dsl/journey.d.ts +10 -2
- package/dist/dsl/journey.d.ts.map +1 -1
- package/dist/dsl/journey.js +11 -2
- package/dist/dsl/journey.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +66 -1
- package/dist/loader.js.map +1 -1
- package/dist/network-timings.d.ts +55 -0
- package/dist/network-timings.d.ts.map +1 -0
- package/dist/network-timings.js +107 -0
- package/dist/network-timings.js.map +1 -0
- package/dist/plugins/api-network.d.ts +39 -0
- package/dist/plugins/api-network.d.ts.map +1 -0
- package/dist/plugins/api-network.js +235 -0
- package/dist/plugins/api-network.js.map +1 -0
- package/dist/plugins/network.d.ts +0 -6
- package/dist/plugins/network.d.ts.map +1 -1
- package/dist/plugins/network.js +5 -70
- package/dist/plugins/network.js.map +1 -1
- package/dist/plugins/plugin-manager.d.ts +11 -4
- package/dist/plugins/plugin-manager.d.ts.map +1 -1
- package/dist/plugins/plugin-manager.js +36 -16
- package/dist/plugins/plugin-manager.js.map +1 -1
- package/dist/push/index.d.ts.map +1 -1
- package/dist/push/index.js +4 -0
- package/dist/push/index.js.map +1 -1
- package/dist/push/monitor.d.ts.map +1 -1
- package/dist/push/monitor.js +1 -1
- package/dist/push/monitor.js.map +1 -1
- package/dist/push/run-local.d.ts.map +1 -1
- package/dist/push/run-local.js +2 -1
- package/dist/push/run-local.js.map +1 -1
- package/dist/push/utils.d.ts +7 -0
- package/dist/push/utils.d.ts.map +1 -1
- package/dist/push/utils.js +15 -1
- package/dist/push/utils.js.map +1 -1
- package/dist/reporters/base.d.ts +2 -2
- package/dist/reporters/base.d.ts.map +1 -1
- package/dist/reporters/base.js.map +1 -1
- package/dist/reporters/index.d.ts +2 -2
- package/dist/reporters/index.d.ts.map +1 -1
- package/dist/reporters/index.js.map +1 -1
- package/dist/reporters/json.d.ts +6 -2
- package/dist/reporters/json.d.ts.map +1 -1
- package/dist/reporters/json.js +68 -33
- package/dist/reporters/json.js.map +1 -1
- package/package.json +5 -5
- package/src/common_types.ts +22 -0
- package/src/core/gatherer.ts +41 -10
- package/src/core/globals.ts +1 -1
- package/src/core/index.ts +28 -0
- package/src/core/runner.ts +93 -67
- package/src/dsl/api-journey.ts +93 -0
- package/src/dsl/index.ts +1 -0
- package/src/dsl/journey.ts +21 -9
- package/src/index.ts +6 -0
- package/src/loader.ts +78 -2
- package/src/network-timings.ts +130 -0
- package/src/plugins/api-network.ts +252 -0
- package/src/plugins/network.ts +5 -87
- package/src/plugins/plugin-manager.ts +60 -19
- package/src/push/index.ts +11 -0
- package/src/push/monitor.ts +6 -2
- package/src/push/run-local.ts +2 -1
- package/src/push/utils.ts +15 -0
- package/src/reporters/base.ts +2 -1
- package/src/reporters/index.ts +2 -1
- package/src/reporters/json.ts +74 -41
- package/templates/README.md +3 -1
- package/templates/journeys/advanced-api-example-helpers.ts +79 -0
- package/templates/journeys/advanced-api-example.journey.ts +52 -0
- package/templates/journeys/api-example.journey.ts +35 -0
- package/templates/synthetics.config.ts +2 -0
package/dist/reporters/json.js
CHANGED
|
@@ -50,6 +50,25 @@ function getMetadata() {
|
|
|
50
50
|
},
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
|
+
// ECS `server.ip`/`server.port`. Emitted for API journeys only; browser
|
|
54
|
+
// output keeps the address under `http.response` to preserve its shape.
|
|
55
|
+
function formatServer(response) {
|
|
56
|
+
if (!response?.remoteIPAddress && !response?.remotePort)
|
|
57
|
+
return undefined;
|
|
58
|
+
return {
|
|
59
|
+
ip: response.remoteIPAddress,
|
|
60
|
+
port: response.remotePort,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
// Epoch seconds -> ISO-8601, tolerating missing/non-finite input. A
|
|
64
|
+
// malformed cert date would otherwise throw `RangeError` and sink the
|
|
65
|
+
// whole `journey/end` document (see json.test.ts regression).
|
|
66
|
+
function epochToIso(epochSeconds) {
|
|
67
|
+
if (epochSeconds == null || !Number.isFinite(epochSeconds))
|
|
68
|
+
return undefined;
|
|
69
|
+
const date = new Date(epochSeconds * 1000);
|
|
70
|
+
return Number.isNaN(date.getTime()) ? undefined : date.toISOString();
|
|
71
|
+
}
|
|
53
72
|
function formatTLS(tls) {
|
|
54
73
|
if (!tls || !tls.protocol) {
|
|
55
74
|
return;
|
|
@@ -64,8 +83,8 @@ function formatTLS(tls) {
|
|
|
64
83
|
subject: {
|
|
65
84
|
common_name: tls.subjectName,
|
|
66
85
|
},
|
|
67
|
-
not_after:
|
|
68
|
-
not_before:
|
|
86
|
+
not_after: epochToIso(tls.validTo),
|
|
87
|
+
not_before: epochToIso(tls.validFrom),
|
|
69
88
|
},
|
|
70
89
|
},
|
|
71
90
|
version_protocol: name,
|
|
@@ -119,6 +138,7 @@ function formatNetworkFields(network) {
|
|
|
119
138
|
response,
|
|
120
139
|
},
|
|
121
140
|
tls: formatTLS(response?.securityDetails),
|
|
141
|
+
...(browser?.name === 'api' && { server: formatServer(response) }),
|
|
122
142
|
};
|
|
123
143
|
const pickItems = [
|
|
124
144
|
'browser',
|
|
@@ -163,10 +183,14 @@ function journeyInfo(journey, type) {
|
|
|
163
183
|
if (!journey) {
|
|
164
184
|
return;
|
|
165
185
|
}
|
|
186
|
+
// Surface non-default journey types (e.g. `api`) for downstream routing;
|
|
187
|
+
// browser output omits the field to stay byte-compatible.
|
|
188
|
+
const journeyType = journey.type && journey.type !== 'browser' ? journey.type : undefined;
|
|
166
189
|
const info = {
|
|
167
190
|
name: journey.name,
|
|
168
191
|
id: journey.id,
|
|
169
192
|
tags: journey.tags,
|
|
193
|
+
...(journeyType ? { type: journeyType } : {}),
|
|
170
194
|
};
|
|
171
195
|
const isEnd = type === 'journey/end';
|
|
172
196
|
if (isEnd) {
|
|
@@ -324,30 +348,37 @@ class JSONReporter extends base_1.default {
|
|
|
324
348
|
},
|
|
325
349
|
});
|
|
326
350
|
}
|
|
327
|
-
async onJourneyEnd(journey,
|
|
328
|
-
const {
|
|
329
|
-
const
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
journey,
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
+
async onJourneyEnd(journey, result) {
|
|
352
|
+
const { timestamp, networkinfo, options } = result;
|
|
353
|
+
const isAPIJourney = journey.type === 'api';
|
|
354
|
+
// Browser-only fields; absent for API journeys.
|
|
355
|
+
const browserDelay = result.browserDelay;
|
|
356
|
+
const browserconsole = result.browserconsole;
|
|
357
|
+
if (!isAPIJourney) {
|
|
358
|
+
const { ssblocks, screenshots } = options;
|
|
359
|
+
const writeScreenshots = screenshots === 'on' ||
|
|
360
|
+
(screenshots === 'only-on-failure' && journey.status === 'failed');
|
|
361
|
+
if (writeScreenshots) {
|
|
362
|
+
await gatherScreenshots((0, path_1.join)(helpers_1.CACHE_PATH, 'screenshots'), async (screenshot) => {
|
|
363
|
+
const { data, timestamp, step } = screenshot;
|
|
364
|
+
if (!data) {
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
if (ssblocks) {
|
|
368
|
+
await this.writeScreenshotBlocks(journey, screenshot);
|
|
369
|
+
}
|
|
370
|
+
else {
|
|
371
|
+
this.writeJSON({
|
|
372
|
+
type: 'step/screenshot',
|
|
373
|
+
timestamp,
|
|
374
|
+
journey,
|
|
375
|
+
step,
|
|
376
|
+
blob: data,
|
|
377
|
+
blob_mime: 'image/jpeg',
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
});
|
|
381
|
+
}
|
|
351
382
|
}
|
|
352
383
|
if (networkinfo) {
|
|
353
384
|
networkinfo.forEach(ni => {
|
|
@@ -376,18 +407,22 @@ class JSONReporter extends base_1.default {
|
|
|
376
407
|
});
|
|
377
408
|
});
|
|
378
409
|
}
|
|
410
|
+
const endPayload = {
|
|
411
|
+
status: journey.status,
|
|
412
|
+
// Omit `browser_delay_us` for API journeys where it has no meaning;
|
|
413
|
+
// key order preserves the existing browser wire shape.
|
|
414
|
+
...(isAPIJourney
|
|
415
|
+
? {}
|
|
416
|
+
: { browser_delay_us: (0, helpers_1.getDurationInUs)(browserDelay) }),
|
|
417
|
+
// timestamp in microseconds at which the current node process began, measured in Unix time.
|
|
418
|
+
process_startup_epoch_us: Math.trunc(helpers_1.processStart * 1000),
|
|
419
|
+
};
|
|
379
420
|
this.writeJSON({
|
|
380
421
|
type: 'journey/end',
|
|
381
422
|
journey,
|
|
382
423
|
timestamp,
|
|
383
424
|
error: journey.error,
|
|
384
|
-
payload:
|
|
385
|
-
status: journey.status,
|
|
386
|
-
// convert from monotonic seconds time to microseconds
|
|
387
|
-
browser_delay_us: (0, helpers_1.getDurationInUs)(browserDelay),
|
|
388
|
-
// timestamp in microseconds at which the current node process began, measured in Unix time.
|
|
389
|
-
process_startup_epoch_us: Math.trunc(helpers_1.processStart * 1000),
|
|
390
|
-
},
|
|
425
|
+
payload: endPayload,
|
|
391
426
|
});
|
|
392
427
|
}
|
|
393
428
|
onEnd() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/reporters/json.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/reporters/json.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elastic/synthetics",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.25.0",
|
|
4
4
|
"description": "Elastic synthetic monitoring agent",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -61,11 +61,11 @@
|
|
|
61
61
|
"micromatch": "^4.0.8",
|
|
62
62
|
"otpauth": "^9.3.2",
|
|
63
63
|
"pirates": "^4.0.5",
|
|
64
|
-
"playwright": "=1.
|
|
65
|
-
"playwright-chromium": "=1.
|
|
66
|
-
"playwright-core": "=1.
|
|
64
|
+
"playwright": "=1.62.0",
|
|
65
|
+
"playwright-chromium": "=1.62.0",
|
|
66
|
+
"playwright-core": "=1.62.0",
|
|
67
67
|
"semver": "^7.5.4",
|
|
68
|
-
"sharp": "^0.
|
|
68
|
+
"sharp": "^0.35.3",
|
|
69
69
|
"snakecase-keys": "^4.0.1",
|
|
70
70
|
"sonic-boom": "^3.3.0",
|
|
71
71
|
"source-map-support": "^0.5.21",
|
package/src/common_types.ts
CHANGED
|
@@ -64,6 +64,10 @@ export type NetworkConditions = {
|
|
|
64
64
|
latency: number;
|
|
65
65
|
};
|
|
66
66
|
|
|
67
|
+
export type APIDriver = {
|
|
68
|
+
request: APIRequestContext;
|
|
69
|
+
};
|
|
70
|
+
|
|
67
71
|
export type Driver = {
|
|
68
72
|
browser: ChromiumBrowser;
|
|
69
73
|
context: ChromiumBrowserContext;
|
|
@@ -256,6 +260,13 @@ export type RunOptions = BaseArgs & {
|
|
|
256
260
|
grepOpts?: GrepOptions;
|
|
257
261
|
};
|
|
258
262
|
|
|
263
|
+
export type APIRunOptions = BaseArgs & {
|
|
264
|
+
network?: boolean;
|
|
265
|
+
environment?: string;
|
|
266
|
+
reporter?: BuiltInReporterName | ReporterInstance;
|
|
267
|
+
grepOpts?: GrepOptions;
|
|
268
|
+
};
|
|
269
|
+
|
|
259
270
|
export type PushOptions = Partial<ProjectSettings> &
|
|
260
271
|
Partial<BaseArgs> & {
|
|
261
272
|
auth: string;
|
|
@@ -291,6 +302,12 @@ export type SyntheticsConfig = {
|
|
|
291
302
|
proxy?: ProxySettings;
|
|
292
303
|
};
|
|
293
304
|
|
|
305
|
+
/** Runner Payload types */
|
|
306
|
+
export type APIJourneyResult = Partial<Journey> & {
|
|
307
|
+
networkinfo?: PluginOutput['networkinfo'];
|
|
308
|
+
stepsresults?: Array<StepResult>;
|
|
309
|
+
};
|
|
310
|
+
|
|
294
311
|
/** Runner Payload types */
|
|
295
312
|
export type JourneyResult = Partial<Journey> & {
|
|
296
313
|
networkinfo?: PluginOutput['networkinfo'];
|
|
@@ -330,6 +347,11 @@ export type JourneyEndResult = JourneyStartResult &
|
|
|
330
347
|
options: RunOptions;
|
|
331
348
|
};
|
|
332
349
|
|
|
350
|
+
export type APIJourneyEndResult = JourneyStartResult &
|
|
351
|
+
APIJourneyResult & {
|
|
352
|
+
options: RunOptions;
|
|
353
|
+
};
|
|
354
|
+
|
|
333
355
|
export type StepEndResult = StepResult;
|
|
334
356
|
|
|
335
357
|
export type ProxySettings = {
|
package/src/core/gatherer.ts
CHANGED
|
@@ -32,7 +32,12 @@ import {
|
|
|
32
32
|
} from 'playwright-core';
|
|
33
33
|
import { PluginManager } from '../plugins';
|
|
34
34
|
import { log } from './logger';
|
|
35
|
-
import {
|
|
35
|
+
import {
|
|
36
|
+
APIDriver,
|
|
37
|
+
Driver,
|
|
38
|
+
NetworkConditions,
|
|
39
|
+
RunOptions,
|
|
40
|
+
} from '../common_types';
|
|
36
41
|
|
|
37
42
|
// Default timeout for Playwright actions and Navigations
|
|
38
43
|
const DEFAULT_TIMEOUT = 50000;
|
|
@@ -71,9 +76,19 @@ export class Gatherer {
|
|
|
71
76
|
});
|
|
72
77
|
}
|
|
73
78
|
|
|
74
|
-
static async setupDriver
|
|
75
|
-
|
|
79
|
+
static async setupDriver<T extends 'browser' | 'api' = 'browser'>(
|
|
80
|
+
options: RunOptions,
|
|
81
|
+
journeyType: T = 'browser' as T
|
|
82
|
+
): Promise<T extends 'api' ? APIDriver : Driver> {
|
|
76
83
|
const { playwrightOptions } = options;
|
|
84
|
+
|
|
85
|
+
if (journeyType === 'api') {
|
|
86
|
+
const request = await apiRequest.newContext({ ...playwrightOptions });
|
|
87
|
+
return { request } as T extends 'api' ? APIDriver : Driver;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
await Gatherer.launchBrowser(options);
|
|
91
|
+
|
|
77
92
|
const context = await Gatherer.browser.newContext({
|
|
78
93
|
...playwrightOptions,
|
|
79
94
|
userAgent: await Gatherer.getUserAgent(playwrightOptions?.userAgent),
|
|
@@ -96,7 +111,13 @@ export class Gatherer {
|
|
|
96
111
|
const page = await context.newPage();
|
|
97
112
|
const client = await context.newCDPSession(page);
|
|
98
113
|
const request = await apiRequest.newContext({ ...playwrightOptions });
|
|
99
|
-
return {
|
|
114
|
+
return {
|
|
115
|
+
browser: Gatherer.browser,
|
|
116
|
+
context,
|
|
117
|
+
page,
|
|
118
|
+
client,
|
|
119
|
+
request,
|
|
120
|
+
} as T extends 'api' ? APIDriver : Driver;
|
|
100
121
|
}
|
|
101
122
|
|
|
102
123
|
static async getUserAgent(userAgent?: string) {
|
|
@@ -136,14 +157,22 @@ export class Gatherer {
|
|
|
136
157
|
* Starts recording all events related to the v8 devtools protocol
|
|
137
158
|
* https://chromedevtools.github.io/devtools-protocol/v8/
|
|
138
159
|
*/
|
|
139
|
-
static async beginRecording(driver: Driver, options: RunOptions) {
|
|
160
|
+
static async beginRecording(driver: Driver | APIDriver, options: RunOptions) {
|
|
140
161
|
log('Gatherer: started recording');
|
|
141
162
|
const { network, metrics } = options;
|
|
142
163
|
Gatherer.pluginManager = new PluginManager(driver);
|
|
143
164
|
Gatherer.pluginManager.registerAll(options);
|
|
144
|
-
const plugins = [
|
|
145
|
-
|
|
146
|
-
|
|
165
|
+
const plugins = [];
|
|
166
|
+
if ('browser' in driver) {
|
|
167
|
+
plugins.push(await Gatherer.pluginManager.start('browserconsole'));
|
|
168
|
+
network && plugins.push(await Gatherer.pluginManager.start('network'));
|
|
169
|
+
metrics &&
|
|
170
|
+
plugins.push(await Gatherer.pluginManager.start('performance'));
|
|
171
|
+
} else {
|
|
172
|
+
// Network is the only data source for API journeys, so always capture
|
|
173
|
+
// it regardless of `options.network`.
|
|
174
|
+
plugins.push(await Gatherer.pluginManager.start('network'));
|
|
175
|
+
}
|
|
147
176
|
await Promise.all(plugins);
|
|
148
177
|
return Gatherer.pluginManager;
|
|
149
178
|
}
|
|
@@ -153,10 +182,12 @@ export class Gatherer {
|
|
|
153
182
|
await Gatherer.pluginManager.unregisterAll();
|
|
154
183
|
}
|
|
155
184
|
|
|
156
|
-
static async dispose(driver: Driver) {
|
|
185
|
+
static async dispose(driver: Driver | APIDriver) {
|
|
157
186
|
log(`Gatherer: closing all contexts`);
|
|
158
187
|
await driver.request.dispose();
|
|
159
|
-
|
|
188
|
+
if ('context' in driver) {
|
|
189
|
+
await driver.context.close();
|
|
190
|
+
}
|
|
160
191
|
}
|
|
161
192
|
|
|
162
193
|
static async stop() {
|
package/src/core/globals.ts
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
import Runner from './runner';
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
* Use a
|
|
29
|
+
* Use a global Runner which would be accessed by the runtime and
|
|
30
30
|
* required to handle the local vs global invocation through CLI
|
|
31
31
|
*/
|
|
32
32
|
const SYNTHETICS_RUNNER = Symbol.for('SYNTHETICS_RUNNER');
|
package/src/core/index.ts
CHANGED
|
@@ -24,6 +24,10 @@
|
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
import {
|
|
27
|
+
APIJourney,
|
|
28
|
+
APIJourneyCallback,
|
|
29
|
+
APIJourneyOptions,
|
|
30
|
+
APIJourneyWithAnnotations,
|
|
27
31
|
Journey,
|
|
28
32
|
JourneyCallback,
|
|
29
33
|
JourneyOptions,
|
|
@@ -60,6 +64,30 @@ export const journey = createJourney() as JourneyWithAnnotations;
|
|
|
60
64
|
journey.skip = createJourney('skip');
|
|
61
65
|
journey.only = createJourney('only');
|
|
62
66
|
|
|
67
|
+
const createAPIJourney = (type?: 'skip' | 'only') =>
|
|
68
|
+
wrapFnWithLocation(
|
|
69
|
+
(
|
|
70
|
+
location: Location,
|
|
71
|
+
options: APIJourneyOptions | string,
|
|
72
|
+
callback: APIJourneyCallback
|
|
73
|
+
) => {
|
|
74
|
+
log(`API Journey register: ${JSON.stringify(options)}`);
|
|
75
|
+
if (typeof options === 'string') {
|
|
76
|
+
options = { name: options, id: options };
|
|
77
|
+
}
|
|
78
|
+
const j = new APIJourney(options, callback, location);
|
|
79
|
+
if (type) {
|
|
80
|
+
j[type] = true;
|
|
81
|
+
}
|
|
82
|
+
runner._addJourney(j);
|
|
83
|
+
return j;
|
|
84
|
+
}
|
|
85
|
+
);
|
|
86
|
+
|
|
87
|
+
export const apiJourney = createAPIJourney() as APIJourneyWithAnnotations;
|
|
88
|
+
apiJourney.skip = createAPIJourney('skip');
|
|
89
|
+
apiJourney.only = createAPIJourney('only');
|
|
90
|
+
|
|
63
91
|
const createStep = (type?: 'skip' | 'soft' | 'only') =>
|
|
64
92
|
wrapFnWithLocation(
|
|
65
93
|
(location: Location, name: string, callback: VoidCallback) => {
|