@seleniumhq/side-runtime 4.0.0-alpha.9 → 4.0.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 (94) hide show
  1. package/dist/__tests__/callstack.spec.d.ts +2 -0
  2. package/dist/__tests__/callstack.spec.d.ts.map +1 -0
  3. package/dist/__tests__/callstack.spec.js +63 -0
  4. package/dist/__tests__/callstack.spec.js.map +1 -0
  5. package/dist/__tests__/integration/playback-webdriver.spec.d.ts +2 -0
  6. package/dist/__tests__/integration/playback-webdriver.spec.d.ts.map +1 -0
  7. package/dist/__tests__/integration/playback-webdriver.spec.js +249 -0
  8. package/dist/__tests__/integration/playback-webdriver.spec.js.map +1 -0
  9. package/dist/__tests__/playback-tree/command-leveler.spec.d.ts +2 -0
  10. package/dist/__tests__/playback-tree/command-leveler.spec.d.ts.map +1 -0
  11. package/dist/__tests__/playback-tree/command-leveler.spec.js +69 -0
  12. package/dist/__tests__/playback-tree/command-leveler.spec.js.map +1 -0
  13. package/dist/__tests__/playback-tree/command-node.spec.d.ts +2 -0
  14. package/dist/__tests__/playback-tree/command-node.spec.d.ts.map +1 -0
  15. package/dist/__tests__/playback-tree/command-node.spec.js +232 -0
  16. package/dist/__tests__/playback-tree/command-node.spec.js.map +1 -0
  17. package/dist/__tests__/playback-tree/playback-tree.spec.d.ts +2 -0
  18. package/dist/__tests__/playback-tree/playback-tree.spec.d.ts.map +1 -0
  19. package/dist/__tests__/playback-tree/playback-tree.spec.js +463 -0
  20. package/dist/__tests__/playback-tree/playback-tree.spec.js.map +1 -0
  21. package/dist/__tests__/playback-tree/syntax-validation.spec.d.ts +2 -0
  22. package/dist/__tests__/playback-tree/syntax-validation.spec.d.ts.map +1 -0
  23. package/dist/__tests__/playback-tree/syntax-validation.spec.js +224 -0
  24. package/dist/__tests__/playback-tree/syntax-validation.spec.js.map +1 -0
  25. package/dist/__tests__/playback.spec.d.ts +2 -0
  26. package/dist/__tests__/playback.spec.d.ts.map +1 -0
  27. package/dist/__tests__/playback.spec.js +2161 -0
  28. package/dist/__tests__/playback.spec.js.map +1 -0
  29. package/dist/__tests__/preprocessors.spec.d.ts +2 -0
  30. package/dist/__tests__/preprocessors.spec.d.ts.map +1 -0
  31. package/dist/__tests__/preprocessors.spec.js +141 -0
  32. package/dist/__tests__/preprocessors.spec.js.map +1 -0
  33. package/dist/__tests__/util/FakeExecutor.d.ts +32 -0
  34. package/dist/__tests__/util/FakeExecutor.d.ts.map +1 -0
  35. package/dist/__tests__/util/FakeExecutor.js +81 -0
  36. package/dist/__tests__/util/FakeExecutor.js.map +1 -0
  37. package/dist/__tests__/util/JestFakeExecutor.d.ts +32 -0
  38. package/dist/__tests__/util/JestFakeExecutor.d.ts.map +1 -0
  39. package/dist/__tests__/util/JestFakeExecutor.js +79 -0
  40. package/dist/__tests__/util/JestFakeExecutor.js.map +1 -0
  41. package/dist/__tests__/utils.spec.d.ts +2 -0
  42. package/dist/__tests__/utils.spec.d.ts.map +1 -0
  43. package/dist/__tests__/utils.spec.js +40 -0
  44. package/dist/__tests__/utils.spec.js.map +1 -0
  45. package/dist/__tests__/webdriver.spec.d.ts +2 -0
  46. package/dist/__tests__/webdriver.spec.d.ts.map +1 -0
  47. package/dist/__tests__/webdriver.spec.js +522 -0
  48. package/dist/__tests__/webdriver.spec.js.map +1 -0
  49. package/dist/playback-tree/command-leveler.d.ts +2 -2
  50. package/dist/playback-tree/command-leveler.d.ts.map +1 -1
  51. package/dist/playback-tree/command-leveler.js +4 -2
  52. package/dist/playback-tree/command-leveler.js.map +1 -1
  53. package/dist/playback-tree/command-node.d.ts +5 -4
  54. package/dist/playback-tree/command-node.d.ts.map +1 -1
  55. package/dist/playback-tree/command-node.js +81 -29
  56. package/dist/playback-tree/command-node.js.map +1 -1
  57. package/dist/playback-tree/commands.d.ts +12 -9
  58. package/dist/playback-tree/commands.d.ts.map +1 -1
  59. package/dist/playback-tree/commands.js +22 -14
  60. package/dist/playback-tree/commands.js.map +1 -1
  61. package/dist/playback-tree/index.d.ts +1 -1
  62. package/dist/playback-tree/index.d.ts.map +1 -1
  63. package/dist/playback-tree/index.js +5 -2
  64. package/dist/playback-tree/index.js.map +1 -1
  65. package/dist/playback-tree/syntax-validation.d.ts.map +1 -1
  66. package/dist/playback-tree/syntax-validation.js +4 -2
  67. package/dist/playback-tree/syntax-validation.js.map +1 -1
  68. package/dist/playback.d.ts +16 -12
  69. package/dist/playback.d.ts.map +1 -1
  70. package/dist/playback.js +64 -33
  71. package/dist/playback.js.map +1 -1
  72. package/dist/plugins.d.ts +4 -3
  73. package/dist/plugins.d.ts.map +1 -1
  74. package/dist/plugins.js +28 -9
  75. package/dist/plugins.js.map +1 -1
  76. package/dist/preprocessors.d.ts +2 -2
  77. package/dist/preprocessors.d.ts.map +1 -1
  78. package/dist/preprocessors.js +12 -28
  79. package/dist/preprocessors.js.map +1 -1
  80. package/dist/recording-syncronizer-webdriver.d.ts +3 -3
  81. package/dist/recording-syncronizer.d.ts +4 -3
  82. package/dist/recording-syncronizer.d.ts.map +1 -1
  83. package/dist/recording-syncronizer.js +1 -1
  84. package/dist/recording-syncronizer.js.map +1 -1
  85. package/dist/types.d.ts +25 -29
  86. package/dist/types.d.ts.map +1 -1
  87. package/dist/variables.d.ts.map +1 -1
  88. package/dist/variables.js +6 -0
  89. package/dist/variables.js.map +1 -1
  90. package/dist/webdriver.d.ts +39 -45
  91. package/dist/webdriver.d.ts.map +1 -1
  92. package/dist/webdriver.js +283 -222
  93. package/dist/webdriver.js.map +1 -1
  94. package/package.json +10 -7
package/dist/playback.js CHANGED
@@ -26,6 +26,7 @@ const playback_tree_1 = require("./playback-tree");
26
26
  const errors_1 = require("./errors");
27
27
  const callstack_1 = __importDefault(require("./callstack"));
28
28
  const variables_1 = __importDefault(require("./variables"));
29
+ const preprocessors_1 = require("./preprocessors");
29
30
  const EE = 'event-emitter';
30
31
  const state = 'state';
31
32
  const DELAY_INTERVAL = 10;
@@ -52,7 +53,10 @@ class Playback {
52
53
  this[EE] = new events_1.default();
53
54
  this[EE].emitCommandStateChange = (payload) => {
54
55
  this[state].lastSentCommandState = payload;
55
- this[EE].emit(exports.PlaybackEvents.COMMAND_STATE_CHANGED, payload);
56
+ this[EE].emit(exports.PlaybackEvents.COMMAND_STATE_CHANGED, {
57
+ ...payload,
58
+ testID: this[state].testID,
59
+ });
56
60
  };
57
61
  this[EE].emitControlFlowChange = (payload) => {
58
62
  this[EE].emit(exports.PlaybackEvents.CONTROL_FLOW_CHANGED, payload);
@@ -69,6 +73,7 @@ class Playback {
69
73
  this[state].initialized = true;
70
74
  }
71
75
  async play(test, { pauseImmediately, startingCommandIndex } = {}) {
76
+ this[state].testID = test.id;
72
77
  await this._prepareToPlay();
73
78
  this.commands = test.commands;
74
79
  this.playbackTree = (0, playback_tree_1.createPlaybackTree)(test.commands, {
@@ -100,6 +105,7 @@ class Playback {
100
105
  throw new Error('Command to start from not found in test');
101
106
  }
102
107
  else {
108
+ this[state].testID = test.id;
103
109
  const playToPromise = new Promise((res, rej) => {
104
110
  this[state].playTo = {
105
111
  command: test.commands[stopIndex].id,
@@ -115,6 +121,7 @@ class Playback {
115
121
  }
116
122
  }
117
123
  async playFrom(test, commandToStart) {
124
+ this[state].testID = test.id;
118
125
  const index = test.commands.indexOf(commandToStart);
119
126
  if (index === -1) {
120
127
  throw new Error('Command not found in test');
@@ -158,7 +165,8 @@ class Playback {
158
165
  },
159
166
  });
160
167
  this[state].callstack = callstack;
161
- await (await this._play())();
168
+ const running = await this._play();
169
+ await running();
162
170
  }
163
171
  }
164
172
  async step(steps = 1) {
@@ -177,16 +185,6 @@ class Playback {
177
185
  throw new Error("Can't step through a test that isn't paused");
178
186
  }
179
187
  }
180
- async pause({ graceful } = { graceful: false }) {
181
- this[state].pausing = true;
182
- if (!graceful) {
183
- await this.executor.cancel();
184
- }
185
- this[state].isPlaying = false;
186
- await new Promise((res) => {
187
- this[state].pausingResolve = res;
188
- });
189
- }
190
188
  resume() {
191
189
  this[state].steps = undefined;
192
190
  this._resume();
@@ -204,7 +202,7 @@ class Playback {
204
202
  }
205
203
  // play will throw but the user will catch it with this.play()
206
204
  // this.stop() should resolve once play finishes
207
- await this[state].playPromise.catch(() => { });
205
+ await this[state].playPromise;
208
206
  }
209
207
  async abort() {
210
208
  this._setExitCondition(exports.PlaybackStates.ABORTED);
@@ -216,19 +214,25 @@ class Playback {
216
214
  }
217
215
  // we kill regardless of wether the test is paused to keep the
218
216
  // behavior consistent
219
- // @ts-expect-error
220
- await this.executor.kill();
217
+ await this.executor.cancel();
221
218
  // play will throw but the user will catch it with this.play()
222
219
  // this.abort() should resolve once play finishes
223
- await this[state].playPromise.catch(() => { });
220
+ try {
221
+ await this[state].playPromise;
222
+ }
223
+ catch (err) {
224
+ // ignore
225
+ }
224
226
  }
225
- async cleanup() {
227
+ async cleanup(persistSession = false) {
228
+ // await this.abort()
226
229
  this[EE].removeAllListeners();
227
- await this.executor.cleanup();
230
+ await this.executor.cleanup(persistSession);
228
231
  }
229
232
  async _prepareToPlay() {
230
233
  this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
231
234
  state: exports.PlaybackStates.PREPARATION,
235
+ testID: this[state].testID,
232
236
  });
233
237
  }
234
238
  async _beforePlay() {
@@ -245,6 +249,7 @@ class Playback {
245
249
  async _play() {
246
250
  this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
247
251
  state: exports.PlaybackStates.PLAYING,
252
+ testID: this[state].testID,
248
253
  });
249
254
  let finishWasCalled = false;
250
255
  this[state].playPromise = (async () => {
@@ -272,6 +277,7 @@ class Playback {
272
277
  r();
273
278
  this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
274
279
  state: exports.PlaybackStates.PLAYING,
280
+ testID: this[state].testID,
275
281
  });
276
282
  }
277
283
  }
@@ -279,7 +285,7 @@ class Playback {
279
285
  ignoreBreakpoint: false,
280
286
  }) {
281
287
  if (!this.currentExecutingNode &&
282
- this[state].callstack.length > 1) {
288
+ (this[state]?.callstack?.length ?? 0) > 1) {
283
289
  this._unwind();
284
290
  }
285
291
  if (this.currentExecutingNode) {
@@ -290,7 +296,6 @@ class Playback {
290
296
  callstackIndex,
291
297
  command,
292
298
  state: exports.CommandStates.EXECUTING,
293
- message: undefined,
294
299
  });
295
300
  const steps = this[state].steps;
296
301
  if (this[state].stopping) {
@@ -345,6 +350,7 @@ class Playback {
345
350
  command,
346
351
  state: exports.CommandStates.FAILED,
347
352
  message: err.message,
353
+ error: err,
348
354
  });
349
355
  return await this._handleException(() => {
350
356
  this._setExitCondition(exports.PlaybackStates.FAILED);
@@ -358,6 +364,7 @@ class Playback {
358
364
  command,
359
365
  state: exports.CommandStates.FAILED,
360
366
  message: err.message,
367
+ error: err,
361
368
  });
362
369
  return await this._handleException(async () => {
363
370
  this._setExitCondition(exports.PlaybackStates.FAILED);
@@ -373,6 +380,7 @@ class Playback {
373
380
  command,
374
381
  state: exports.CommandStates.ERRORED,
375
382
  message: err.message,
383
+ error: err,
376
384
  });
377
385
  return await this._handleException(() => {
378
386
  this._setExitCondition(exports.PlaybackStates.ERRORED);
@@ -390,7 +398,6 @@ class Playback {
390
398
  this.currentExecutingNode = result.next;
391
399
  return await this._executionLoop();
392
400
  }
393
- throw new Error('Uh oh, why am I here?!?');
394
401
  }
395
402
  async _playSingleCommand(command) {
396
403
  const commandNode = (0, playback_tree_1.createPlaybackTree)([command], {
@@ -416,6 +423,7 @@ class Playback {
416
423
  command,
417
424
  state: exports.CommandStates.FAILED,
418
425
  message: err.message,
426
+ error: err,
419
427
  });
420
428
  }
421
429
  else {
@@ -425,6 +433,7 @@ class Playback {
425
433
  command,
426
434
  state: exports.CommandStates.ERRORED,
427
435
  message: err.message,
436
+ error: err,
428
437
  });
429
438
  }
430
439
  throw err;
@@ -459,7 +468,7 @@ class Playback {
459
468
  if (!this.getTestByName) {
460
469
  throw new Error("'run' command is not supported");
461
470
  }
462
- const test = await this.getTestByName(testName);
471
+ const test = await this.getTestByName((0, preprocessors_1.interpolateString)(testName, this.variables));
463
472
  if (!test) {
464
473
  throw new Error(`Can't run unknown test: ${testName}`);
465
474
  }
@@ -495,11 +504,11 @@ class Playback {
495
504
  id,
496
505
  callstackIndex,
497
506
  command: this[state].lastSentCommandState.command,
498
- state: exports.CommandStates.ERRORED,
507
+ error: new Error('Playback stopped'),
499
508
  message: 'Playback stopped',
509
+ state: exports.CommandStates.ERRORED,
500
510
  });
501
511
  }
502
- this[state].lastSentCommandState = undefined;
503
512
  const { playTo, steps, stepPromise } = this[state];
504
513
  if (stepPromise) {
505
514
  if (steps === 0) {
@@ -514,20 +523,31 @@ class Playback {
514
523
  if (playTo) {
515
524
  playTo.rej(new Error("Playback finished before reaching the requested command, check to make sure control flow isn't preventing this"));
516
525
  }
517
- this[state].callstack = undefined;
518
526
  this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
519
527
  state: this[state].exitCondition || exports.PlaybackStates.FINISHED,
528
+ testID: this[state].testID,
520
529
  });
530
+ this[state].lastSentCommandState = undefined;
531
+ this[state].callstack = undefined;
532
+ this[state].testID = undefined;
521
533
  }
522
- async _pause() {
523
- this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
524
- state: exports.PlaybackStates.PAUSED,
534
+ async pause({ graceful } = { graceful: false }) {
535
+ if (!this.currentExecutingNode) {
536
+ return;
537
+ }
538
+ this[state].pausing = true;
539
+ if (!graceful) {
540
+ await this.executor.cancel();
541
+ }
542
+ this[state].isPlaying = false;
543
+ await new Promise((res) => {
544
+ this[state].pausingResolve = res;
525
545
  });
526
- await this.__pause();
527
546
  }
528
- async _break() {
547
+ async _pause() {
529
548
  this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
530
- state: exports.PlaybackStates.BREAKPOINT,
549
+ state: exports.PlaybackStates.PAUSED,
550
+ testID: this[state].testID,
531
551
  });
532
552
  await this.__pause();
533
553
  }
@@ -545,10 +565,17 @@ class Playback {
545
565
  this[state].isPlaying = false;
546
566
  playTo.res();
547
567
  }
548
- await new Promise((res) => {
568
+ return new Promise((res) => {
549
569
  this[state].resumeResolve = res;
550
570
  });
551
571
  }
572
+ async _break() {
573
+ this[EE].emit(exports.PlaybackEvents.PLAYBACK_STATE_CHANGED, {
574
+ state: exports.PlaybackStates.BREAKPOINT,
575
+ testID: this[state].testID,
576
+ });
577
+ await this.__pause();
578
+ }
552
579
  async _handleException(unhandledBahaviorFn) {
553
580
  if (!this.options.pauseOnExceptions) {
554
581
  return await unhandledBahaviorFn();
@@ -559,7 +586,7 @@ class Playback {
559
586
  }
560
587
  }
561
588
  async _delay() {
562
- if (this.options.delay)
589
+ if (this.options.delay) {
563
590
  return new Promise((res, rej) => {
564
591
  const start = Date.now();
565
592
  const interval = setInterval(() => {
@@ -575,6 +602,10 @@ class Playback {
575
602
  }
576
603
  }, DELAY_INTERVAL);
577
604
  });
605
+ }
606
+ if (this[state].pausing || this[state].stopping || this[state].aborting) {
607
+ throw new Error('delay cancelled due to playback being stopped/paused');
608
+ }
578
609
  }
579
610
  _unwind() {
580
611
  const callstack = this[state].callstack;
@@ -1 +1 @@
1
- {"version":3,"file":"playback.js","sourceRoot":"","sources":["../src/playback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playback.js","sourceRoot":"","sources":["../src/playback.ts"],"names":[],"mappings":"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"}
package/dist/plugins.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { CustomCommandShape, PluginShape } from './types';
2
- export declare const loadPlugins: (projectPath: string, plugins: string[], importer?: ((fileOrModule: string) => any) | undefined) => Promise<PluginShape[]>;
3
- export declare const getCustomCommands: (plugins: PluginShape[]) => Record<string, CustomCommandShape>;
1
+ import { CustomCommandShape, PluginRuntimeShape } from './types';
2
+ export declare const correctPluginPaths: (projectPath: string, plugins: string[]) => string[];
3
+ export declare const loadPlugins: (pluginPaths: string[], importer?: ((fileOrModule: string) => any) | undefined) => Promise<PluginRuntimeShape[]>;
4
+ export declare const getCustomCommands: (plugins: PluginRuntimeShape[]) => Record<string, CustomCommandShape>;
4
5
  //# sourceMappingURL=plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEzD,eAAO,MAAM,WAAW,gBACT,MAAM,WACV,MAAM,EAAE,6BACS,MAAM,KAAK,GAAG,kBACvC,QAAQ,WAAW,EAAE,CAgBrB,CAAA;AAEH,eAAO,MAAM,iBAAiB,YACnB,WAAW,EAAE,KACrB,OAAO,MAAM,EAAE,kBAAkB,CAOjC,CAAA"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAEhE,eAAO,MAAM,kBAAkB,gBAChB,MAAM,WACV,MAAM,EAAE,KAChB,MAAM,EAeR,CAAA;AAED,eAAO,MAAM,WAAW,gBACT,MAAM,EAAE,6BACK,MAAM,KAAK,GAAG,kBACvC,QAAQ,kBAAkB,EAAE,CAiB5B,CAAA;AAEH,eAAO,MAAM,iBAAiB,YACnB,kBAAkB,EAAE,KAC5B,OAAO,MAAM,EAAE,kBAAkB,CAOjC,CAAA"}
package/dist/plugins.js CHANGED
@@ -26,20 +26,39 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.getCustomCommands = exports.loadPlugins = void 0;
29
+ exports.getCustomCommands = exports.loadPlugins = exports.correctPluginPaths = void 0;
30
30
  const path_1 = __importDefault(require("path"));
31
- const loadPlugins = async (projectPath, plugins, importer) => Promise.all(plugins.map(async (pluginPath) => {
32
- const correctedPluginPath = pluginPath.startsWith('.')
33
- ? path_1.default.join(projectPath, pluginPath)
34
- : pluginPath;
35
- console.debug('Loading plugin from path...', correctedPluginPath);
31
+ const side_model_1 = require("@seleniumhq/side-model");
32
+ const correctPluginPaths = (projectPath, plugins) => {
33
+ const projectDir = projectPath?.split(path_1.default.sep).slice(0, -1).join(path_1.default.sep);
34
+ return plugins
35
+ .filter((pluginPath) => {
36
+ if (typeof pluginPath !== 'string') {
37
+ console.warn('Skipping legacy style plugin ', pluginPath);
38
+ return false;
39
+ }
40
+ return true;
41
+ })
42
+ .map((pluginPath) => {
43
+ return pluginPath.startsWith('.')
44
+ ? path_1.default.join(projectDir, pluginPath)
45
+ : pluginPath;
46
+ });
47
+ };
48
+ exports.correctPluginPaths = correctPluginPaths;
49
+ const loadPlugins = async (pluginPaths, importer) => Promise.all(pluginPaths.map(async (pluginPath) => {
50
+ console.debug('Loading plugin from path...', pluginPath);
36
51
  let pluginFile = importer
37
- ? await importer(correctedPluginPath)
38
- : await Promise.resolve().then(() => __importStar(require(correctedPluginPath)));
52
+ ? await importer(pluginPath)
53
+ : await Promise.resolve(`${pluginPath}`).then(s => __importStar(require(s)));
39
54
  const plugin = pluginFile.default
40
55
  ? pluginFile.default
41
56
  : pluginFile;
42
- console.debug('Loaded plugin successfully?', Boolean(plugin));
57
+ if (plugin) {
58
+ Object.entries(plugin.commands || {}).forEach(([key, command]) => {
59
+ side_model_1.Commands[key] = command;
60
+ });
61
+ }
43
62
  return plugin;
44
63
  }));
45
64
  exports.loadPlugins = loadPlugins;
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAuB;AAGhB,MAAM,WAAW,GAAG,KAAK,EAC9B,WAAmB,EACnB,OAAiB,EACjB,QAAwC,EAChB,EAAE,CAC1B,OAAO,CAAC,GAAG,CACT,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;IAC/B,MAAM,mBAAmB,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;QACpD,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;QACpC,CAAC,CAAC,UAAU,CAAA;IACd,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,mBAAmB,CAAC,CAAA;IACjE,IAAI,UAAU,GAAG,QAAQ;QACvB,CAAC,CAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC;QACrC,CAAC,CAAC,wDAAa,mBAAmB,GAAC,CAAA;IACrC,MAAM,MAAM,GAAgB,UAAU,CAAC,OAAO;QAC5C,CAAC,CAAC,UAAU,CAAC,OAAO;QACpB,CAAC,CAAC,UAAU,CAAA;IACd,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,OAAO,MAAM,CAAA;AACf,CAAC,CAAC,CACH,CAAA;AApBU,QAAA,WAAW,eAoBrB;AAEI,MAAM,iBAAiB,GAAG,CAC/B,OAAsB,EACc,EAAE,CACtC,OAAO,CAAC,MAAM,CACZ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACrB,GAAG,QAAQ;IACX,GAAG,MAAM,CAAC,QAAQ;CACnB,CAAC,EACF,EAAE,CACH,CAAA;AATU,QAAA,iBAAiB,qBAS3B"}
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../src/plugins.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAuB;AACvB,uDAAiD;AAG1C,MAAM,kBAAkB,GAAG,CAChC,WAAmB,EACnB,OAAiB,EACP,EAAE;IACZ,MAAM,UAAU,GAAG,WAAW,EAAE,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC,CAAA;IAC3E,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;QACrB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,UAAU,CAAC,CAAA;YACzD,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QAClB,OAAO,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;YAC/B,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC;YACnC,CAAC,CAAC,UAAU,CAAA;IAChB,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAlBY,QAAA,kBAAkB,sBAkB9B;AAEM,MAAM,WAAW,GAAG,KAAK,EAC9B,WAAqB,EACrB,QAAwC,EACT,EAAE,CACjC,OAAO,CAAC,GAAG,CACT,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;IACnC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,UAAU,CAAC,CAAA;IACxD,IAAI,UAAU,GAAG,QAAQ;QACvB,CAAC,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC;QAC5B,CAAC,CAAC,yBAAa,UAAU,uCAAC,CAAA;IAC5B,MAAM,MAAM,GAAuB,UAAU,CAAC,OAAO;QACnD,CAAC,CAAC,UAAU,CAAC,OAAO;QACpB,CAAC,CAAC,UAAU,CAAA;IACd,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;YAC/D,qBAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;QACzB,CAAC,CAAC,CAAA;KACH;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAC,CACH,CAAA;AApBU,QAAA,WAAW,eAoBrB;AAEI,MAAM,iBAAiB,GAAG,CAC/B,OAA6B,EACO,EAAE,CACtC,OAAO,CAAC,MAAM,CACZ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACrB,GAAG,QAAQ;IACX,GAAG,MAAM,CAAC,QAAQ;CACnB,CAAC,EACF,EAAwC,CACzC,CAAA;AATU,QAAA,iBAAiB,qBAS3B"}
@@ -1,7 +1,7 @@
1
1
  import Variables from './variables';
2
2
  export declare function composePreprocessors(...args: any[]): any;
3
- export declare type Interpolator = (value: string, variables: Variables) => string;
4
- export declare function preprocessArray(interpolator: Interpolator): (items: string[], variables: Variables) => string[][];
3
+ export type Interpolator = (value: string, variables: Variables) => string;
4
+ export declare function preprocessArray(interpolator: Interpolator): (items: [string, string][], variables: Variables) => string[][];
5
5
  export declare function interpolateString(value: string, variables: Variables): string;
6
6
  export declare function interpolateScript(script: string, variables: Variables): {
7
7
  script: string;
@@ -1 +1 @@
1
- {"version":3,"file":"preprocessors.d.ts","sourceRoot":"","sources":["../src/preprocessors.ts"],"names":[],"mappings":"AAkBA,OAAO,SAAS,MAAM,aAAa,CAAA;AAQnC,wBAAgB,oBAAoB,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,OA6ClD;AAyBD,oBAAY,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,KAAK,MAAM,CAAA;AAE1E,wBAAgB,eAAe,CAAC,YAAY,EAAE,YAAY,WACjB,MAAM,EAAE,aAAa,SAAS,gBAGtE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,UAgCpE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;;;EAwCrE"}
1
+ {"version":3,"file":"preprocessors.d.ts","sourceRoot":"","sources":["../src/preprocessors.ts"],"names":[],"mappings":"AAkBA,OAAO,SAAS,MAAM,aAAa,CAAA;AASnC,wBAAgB,oBAAoB,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,OAqDlD;AAyBD,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,KAAK,MAAM,CAAA;AAE1E,wBAAgB,eAAe,CAAC,YAAY,EAAE,YAAY,WAE/C,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,aACd,SAAS,gBAOvB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,UAiCpE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;;;EAwCrE"}
@@ -29,42 +29,21 @@ function composePreprocessors(...args) {
29
29
  return func;
30
30
  }
31
31
  else if (params.length === 1) {
32
- return function preprocess(target) {
33
- // @ts-expect-error
34
- return func.call(this, runPreprocessor(params[0], target, this.variables));
32
+ return function preprocess(target, ...args) {
33
+ return func.call(this, runPreprocessor(params[0], target, this.variables), ...args);
35
34
  };
36
35
  }
37
36
  else if (params.length === 2) {
38
- return function preprocess(target, value) {
39
- return func.call(
40
- // @ts-expect-error
41
- this,
42
- // @ts-expect-error
43
- runPreprocessor(params[0], target, this.variables),
44
- // @ts-expect-error
45
- runPreprocessor(params[1], value, this.variables));
37
+ return function preprocess(target, value, ...args) {
38
+ return func.call(this, runPreprocessor(params[0], target, this.variables), runPreprocessor(params[1], value, this.variables), ...args);
46
39
  };
47
40
  }
48
41
  else {
49
42
  return function preprocess(target, value, options) {
50
43
  if (!options) {
51
- return func.call(
52
- // @ts-expect-error
53
- this,
54
- // @ts-expect-error
55
- runPreprocessor(params[0], target, this.variables),
56
- // @ts-expect-error
57
- runPreprocessor(params[1], value, this.variables));
44
+ return func.call(this, runPreprocessor(params[0], target, this.variables), runPreprocessor(params[1], value, this.variables));
58
45
  }
59
- return func.call(
60
- // @ts-expect-error
61
- this,
62
- // @ts-expect-error
63
- runPreprocessor(params[0], target, this.variables),
64
- // @ts-expect-error
65
- runPreprocessor(params[1], value, this.variables),
66
- // @ts-expect-error
67
- preprocessObject(params[2], options, this.variables));
46
+ return func.call(this, runPreprocessor(params[0], target, this.variables), runPreprocessor(params[1], value, this.variables), preprocessObject(params[2], options, this.variables));
68
47
  };
69
48
  }
70
49
  }
@@ -86,11 +65,16 @@ function preprocessObject(preprocessors, obj, ...args) {
86
65
  }
87
66
  function preprocessArray(interpolator) {
88
67
  return function preprocessArray(items, variables) {
89
- return items.map((item) => [interpolator(item[0], variables), item[1]]);
68
+ return items.map((item) => [
69
+ interpolator(item[0], variables),
70
+ interpolator(item[1], variables),
71
+ ]);
90
72
  };
91
73
  }
92
74
  exports.preprocessArray = preprocessArray;
93
75
  function interpolateString(value, variables) {
76
+ if (!value)
77
+ return '';
94
78
  value = value.replace(/^\s+/, '');
95
79
  value = value.replace(/\s+$/, '');
96
80
  let r2;
@@ -1 +1 @@
1
- {"version":3,"file":"preprocessors.js","sourceRoot":"","sources":["../src/preprocessors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preprocessors.js","sourceRoot":"","sources":["../src/preprocessors.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@ export interface RecorderSynchronizerInput {
6
6
  }
7
7
  export default function createRecorderSyncronizerForWebdriverExecutor({ executor, sessionId, logger, }: RecorderSynchronizerInput): {
8
8
  hooks: {
9
- onStoreWindowHandle: ({ windowHandle, windowHandleName, }: import("./recording-syncronizer").WindowFnInput) => Promise<void>;
10
- onWindowAppeared: ({ windowHandle, windowHandleName, }: import("./recording-syncronizer").WindowFnInput) => Promise<void>;
11
- onWindowSwitched: ({ windowHandle }: import("./recording-syncronizer").WindowFnInput) => Promise<void>;
9
+ onStoreWindowHandle: ({ windowHandle, windowHandleName, }: import("./types").StoreWindowHandleHookInput) => Promise<void>;
10
+ onWindowAppeared: ({ windowHandle, windowHandleName, }: import("./types").WindowAppearedHookInput) => Promise<void>;
11
+ onWindowSwitched: ({ windowHandle }: import("./types").WindowSwitchedHookInput) => Promise<void>;
12
12
  };
13
13
  syncAllPendingWindows: () => Promise<void>;
14
14
  };
@@ -1,5 +1,6 @@
1
1
  import { WebDriver } from 'selenium-webdriver';
2
2
  import { WebDriverExecutor } from '.';
3
+ import { StoreWindowHandleHookInput, WindowAppearedHookInput, WindowSwitchedHookInput } from './types';
3
4
  export interface RecorderSyncronizerInput {
4
5
  sessionId: string;
5
6
  executeAsyncScript: WebDriverExecutor['doExecuteAsyncScript'];
@@ -13,9 +14,9 @@ export interface WindowFnInput {
13
14
  }
14
15
  export default function createRecorderSyncronizer({ sessionId, executeAsyncScript, switchToWindow, getWindowHandle, logger, }: RecorderSyncronizerInput): {
15
16
  hooks: {
16
- onStoreWindowHandle: ({ windowHandle, windowHandleName, }: WindowFnInput) => Promise<void>;
17
- onWindowAppeared: ({ windowHandle, windowHandleName, }: WindowFnInput) => Promise<void>;
18
- onWindowSwitched: ({ windowHandle }: WindowFnInput) => Promise<void>;
17
+ onStoreWindowHandle: ({ windowHandle, windowHandleName, }: StoreWindowHandleHookInput) => Promise<void>;
18
+ onWindowAppeared: ({ windowHandle, windowHandleName, }: WindowAppearedHookInput) => Promise<void>;
19
+ onWindowSwitched: ({ windowHandle }: WindowSwitchedHookInput) => Promise<void>;
19
20
  };
20
21
  syncAllPendingWindows: () => Promise<void>;
21
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"recording-syncronizer.d.ts","sourceRoot":"","sources":["../src/recording-syncronizer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,GAAG,CAAA;AAErC,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAA;IAC7D,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,eAAe,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAA;IAC7C,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,MAAM,GACP,EAAE,wBAAwB;;mEAOtB,aAAa;gEAQb,aAAa;6CAMkC,aAAa;;;EA0ChE"}
1
+ {"version":3,"file":"recording-syncronizer.d.ts","sourceRoot":"","sources":["../src/recording-syncronizer.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,GAAG,CAAA;AACrC,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,SAAS,CAAA;AAEhB,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAA;IAC7D,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,eAAe,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAA;IAC7C,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAChD,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,MAAM,GACP,EAAE,wBAAwB;;mEAOtB,0BAA0B;gEAQ1B,uBAAuB;6CAMwB,uBAAuB;;;EA0C1E"}
@@ -24,7 +24,7 @@ function createRecorderSyncronizer({ sessionId, executeAsyncScript, switchToWind
24
24
  await syncWindowHandle(windowHandle);
25
25
  }
26
26
  async function onWindowAppeared({ windowHandle, windowHandleName, }) {
27
- if (!syncedWindows[windowHandle]) {
27
+ if (windowHandle && windowHandleName && !syncedWindows[windowHandle]) {
28
28
  pendingWindows[windowHandle] = windowHandleName;
29
29
  }
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"recording-syncronizer.js","sourceRoot":"","sources":["../src/recording-syncronizer.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,wDAAwD;AACxD,6DAA6D;AAC7D,oDAAoD;AACpD,6DAA6D;AAC7D,6DAA6D;AAC7D,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,6DAA6D;AAC7D,8DAA8D;AAC9D,yDAAyD;AACzD,4DAA4D;AAC5D,0DAA0D;AAC1D,qBAAqB;;AAkBrB,SAAwB,yBAAyB,CAAC,EAChD,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,MAAM,GACmB;IACzB,MAAM,cAAc,GAA2B,EAAE,CAAA;IACjD,MAAM,aAAa,GAA2B,EAAE,CAAA;IAEhD,KAAK,UAAU,mBAAmB,CAAC,EACjC,YAAY,EACZ,gBAAgB,GACF;QACd,cAAc,CAAC,YAAY,CAAC,GAAG,gBAAgB,CAAA;QAC/C,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,EAC9B,YAAY,EACZ,gBAAgB,GACF;QACd,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;YAChC,cAAc,CAAC,YAAY,CAAC,GAAG,gBAAgB,CAAA;SAChD;IACH,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,EAAE,YAAY,EAAiB;QAC7D,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE;YAChC,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAA;SACrC;aAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,MAAM,EAAE;YACjD,MAAM,CAAC,KAAK,CACV,oCAAoC,YAAY,sEAAsE,CACvH,CAAA;SACF;IACH,CAAC;IAED,KAAK,UAAU,qBAAqB;QAClC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAElD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,MAAM,cAAc,GAAG,MAAM,eAAe,EAAE,CAAA;YAE9C,KAAK,IAAI,MAAM,IAAI,cAAc,EAAE;gBACjC,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;gBAC5B,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;aAC/B;YAED,MAAM,cAAc,CAAC,cAAc,CAAC,CAAA;SACrC;IACH,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,YAAoB;QAClD,MAAM,kBAAkB,CAAC;YACvB,MAAM,EAAE,0CAA0C,cAAc,CAAC,YAAY,CAAC,OAAO,SAAS,IAAI;YAClG,IAAI,EAAE,EAAE;SACT,CAAC,CAAA;QACF,aAAa,CAAC,YAAY,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;QAC1D,OAAO,cAAc,CAAC,YAAY,CAAC,CAAA;IACrC,CAAC;IAED,OAAO;QACL,KAAK,EAAE;YACL,mBAAmB;YACnB,gBAAgB;YAChB,gBAAgB;SACjB;QACD,qBAAqB;KACtB,CAAA;AACH,CAAC;AArED,4CAqEC"}
1
+ {"version":3,"file":"recording-syncronizer.js","sourceRoot":"","sources":["../src/recording-syncronizer.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,wDAAwD;AACxD,6DAA6D;AAC7D,oDAAoD;AACpD,6DAA6D;AAC7D,6DAA6D;AAC7D,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,6DAA6D;AAC7D,8DAA8D;AAC9D,yDAAyD;AACzD,4DAA4D;AAC5D,0DAA0D;AAC1D,qBAAqB;;AAuBrB,SAAwB,yBAAyB,CAAC,EAChD,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,MAAM,GACmB;IACzB,MAAM,cAAc,GAA2B,EAAE,CAAA;IACjD,MAAM,aAAa,GAA2B,EAAE,CAAA;IAEhD,KAAK,UAAU,mBAAmB,CAAC,EACjC,YAAY,EACZ,gBAAgB,GACW;QAC3B,cAAc,CAAC,YAAY,CAAC,GAAG,gBAAgB,CAAA;QAC/C,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,EAC9B,YAAY,EACZ,gBAAgB,GACQ;QACxB,IAAI,YAAY,IAAI,gBAAgB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;YACpE,cAAc,CAAC,YAAY,CAAC,GAAG,gBAAgB,CAAA;SAChD;IACH,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,EAAE,YAAY,EAA2B;QACvE,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE;YAChC,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAA;SACrC;aAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,MAAM,EAAE;YACjD,MAAM,CAAC,KAAK,CACV,oCAAoC,YAAY,sEAAsE,CACvH,CAAA;SACF;IACH,CAAC;IAED,KAAK,UAAU,qBAAqB;QAClC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAElD,IAAI,cAAc,CAAC,MAAM,EAAE;YACzB,MAAM,cAAc,GAAG,MAAM,eAAe,EAAE,CAAA;YAE9C,KAAK,IAAI,MAAM,IAAI,cAAc,EAAE;gBACjC,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;gBAC5B,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;aAC/B;YAED,MAAM,cAAc,CAAC,cAAc,CAAC,CAAA;SACrC;IACH,CAAC;IAED,KAAK,UAAU,gBAAgB,CAAC,YAAoB;QAClD,MAAM,kBAAkB,CAAC;YACvB,MAAM,EAAE,0CAA0C,cAAc,CAAC,YAAY,CAAC,OAAO,SAAS,IAAI;YAClG,IAAI,EAAE,EAAE;SACT,CAAC,CAAA;QACF,aAAa,CAAC,YAAY,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAA;QAC1D,OAAO,cAAc,CAAC,YAAY,CAAC,CAAA;IACrC,CAAC;IAED,OAAO;QACL,KAAK,EAAE;YACL,mBAAmB;YACnB,gBAAgB;YAChB,gBAAgB;SACjB;QACD,qBAAqB;KACtB,CAAA;AACH,CAAC;AArED,4CAqEC"}