@memlab/cli 1.0.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 (198) hide show
  1. package/README.md +11 -0
  2. package/bin/memlab +14 -0
  3. package/dist/BaseCommand.d.ts +37 -0
  4. package/dist/BaseCommand.d.ts.map +1 -0
  5. package/dist/BaseCommand.js +132 -0
  6. package/dist/Dispatcher.d.ts +35 -0
  7. package/dist/Dispatcher.d.ts.map +1 -0
  8. package/dist/Dispatcher.js +205 -0
  9. package/dist/TypesThirdParty.d.ts +17 -0
  10. package/dist/TypesThirdParty.d.ts.map +1 -0
  11. package/dist/TypesThirdParty.js +10 -0
  12. package/dist/commands/CleanLoggerDataCommand.d.ts +20 -0
  13. package/dist/commands/CleanLoggerDataCommand.d.ts.map +1 -0
  14. package/dist/commands/CleanLoggerDataCommand.js +50 -0
  15. package/dist/commands/CleanRunDataCommand.d.ts +20 -0
  16. package/dist/commands/CleanRunDataCommand.d.ts.map +1 -0
  17. package/dist/commands/CleanRunDataCommand.js +48 -0
  18. package/dist/commands/InitDirectoryCommand.d.ts +20 -0
  19. package/dist/commands/InitDirectoryCommand.d.ts.map +1 -0
  20. package/dist/commands/InitDirectoryCommand.js +48 -0
  21. package/dist/commands/ListScenariosCommand.d.ts +17 -0
  22. package/dist/commands/ListScenariosCommand.d.ts.map +1 -0
  23. package/dist/commands/ListScenariosCommand.js +51 -0
  24. package/dist/commands/MemLabRunCommand.d.ts +20 -0
  25. package/dist/commands/MemLabRunCommand.d.ts.map +1 -0
  26. package/dist/commands/MemLabRunCommand.js +66 -0
  27. package/dist/commands/PrintSummaryCommand.d.ts +20 -0
  28. package/dist/commands/PrintSummaryCommand.d.ts.map +1 -0
  29. package/dist/commands/PrintSummaryCommand.js +55 -0
  30. package/dist/commands/ResetDirectoryCommand.d.ts +19 -0
  31. package/dist/commands/ResetDirectoryCommand.d.ts.map +1 -0
  32. package/dist/commands/ResetDirectoryCommand.js +46 -0
  33. package/dist/commands/RunMeasureCommand.d.ts +20 -0
  34. package/dist/commands/RunMeasureCommand.d.ts.map +1 -0
  35. package/dist/commands/RunMeasureCommand.js +82 -0
  36. package/dist/commands/WarmupAppCommand.d.ts +20 -0
  37. package/dist/commands/WarmupAppCommand.d.ts.map +1 -0
  38. package/dist/commands/WarmupAppCommand.js +65 -0
  39. package/dist/commands/heap/CheckLeakCommand.d.ts +21 -0
  40. package/dist/commands/heap/CheckLeakCommand.d.ts.map +1 -0
  41. package/dist/commands/heap/CheckLeakCommand.js +94 -0
  42. package/dist/commands/heap/GetRetainerTraceCommand.d.ts +21 -0
  43. package/dist/commands/heap/GetRetainerTraceCommand.d.ts.map +1 -0
  44. package/dist/commands/heap/GetRetainerTraceCommand.js +92 -0
  45. package/dist/commands/heap/HeapAnalysisCommand.d.ts +21 -0
  46. package/dist/commands/heap/HeapAnalysisCommand.d.ts.map +1 -0
  47. package/dist/commands/heap/HeapAnalysisCommand.js +98 -0
  48. package/dist/commands/heap/HeapAnalysisSubCommandWrapper.d.ts +23 -0
  49. package/dist/commands/heap/HeapAnalysisSubCommandWrapper.d.ts.map +1 -0
  50. package/dist/commands/heap/HeapAnalysisSubCommandWrapper.js +68 -0
  51. package/dist/commands/helper/HelperCommand.d.ts +37 -0
  52. package/dist/commands/helper/HelperCommand.d.ts.map +1 -0
  53. package/dist/commands/helper/HelperCommand.js +262 -0
  54. package/dist/commands/helper/lib/CommandOrder.d.ts +13 -0
  55. package/dist/commands/helper/lib/CommandOrder.d.ts.map +1 -0
  56. package/dist/commands/helper/lib/CommandOrder.js +42 -0
  57. package/dist/commands/helper/lib/Types.d.ts +16 -0
  58. package/dist/commands/helper/lib/Types.d.ts.map +1 -0
  59. package/dist/commands/helper/lib/Types.js +11 -0
  60. package/dist/commands/query/QueryDefaultWorkDirCommand.d.ts +20 -0
  61. package/dist/commands/query/QueryDefaultWorkDirCommand.d.ts.map +1 -0
  62. package/dist/commands/query/QueryDefaultWorkDirCommand.js +67 -0
  63. package/dist/commands/snapshot/CheckXvfbSupportCommand.d.ts +18 -0
  64. package/dist/commands/snapshot/CheckXvfbSupportCommand.d.ts.map +1 -0
  65. package/dist/commands/snapshot/CheckXvfbSupportCommand.js +55 -0
  66. package/dist/commands/snapshot/Snapshot.d.ts +11 -0
  67. package/dist/commands/snapshot/Snapshot.d.ts.map +1 -0
  68. package/dist/commands/snapshot/Snapshot.js +47 -0
  69. package/dist/commands/snapshot/TakeSnapshotCommand.d.ts +20 -0
  70. package/dist/commands/snapshot/TakeSnapshotCommand.d.ts.map +1 -0
  71. package/dist/commands/snapshot/TakeSnapshotCommand.js +80 -0
  72. package/dist/commands/snapshot/WarmupAndSnapshotCommand.d.ts +18 -0
  73. package/dist/commands/snapshot/WarmupAndSnapshotCommand.d.ts.map +1 -0
  74. package/dist/commands/snapshot/WarmupAndSnapshotCommand.js +49 -0
  75. package/dist/commands/test/BrowserTest.d.ts +11 -0
  76. package/dist/commands/test/BrowserTest.d.ts.map +1 -0
  77. package/dist/commands/test/BrowserTest.js +41 -0
  78. package/dist/commands/test/RunAllInteractionTestsCommand.d.ts +19 -0
  79. package/dist/commands/test/RunAllInteractionTestsCommand.d.ts.map +1 -0
  80. package/dist/commands/test/RunAllInteractionTestsCommand.js +71 -0
  81. package/dist/commands/test/RunInteractionTestCommand.d.ts +19 -0
  82. package/dist/commands/test/RunInteractionTestCommand.d.ts.map +1 -0
  83. package/dist/commands/test/RunInteractionTestCommand.js +75 -0
  84. package/dist/index.d.ts +11 -0
  85. package/dist/index.d.ts.map +1 -0
  86. package/dist/index.js +26 -0
  87. package/dist/options/AppOption.d.ts +19 -0
  88. package/dist/options/AppOption.d.ts.map +1 -0
  89. package/dist/options/AppOption.js +42 -0
  90. package/dist/options/DebugOption.d.ts +18 -0
  91. package/dist/options/DebugOption.d.ts.map +1 -0
  92. package/dist/options/DebugOption.js +37 -0
  93. package/dist/options/DisableXvfbOption.d.ts +18 -0
  94. package/dist/options/DisableXvfbOption.d.ts.map +1 -0
  95. package/dist/options/DisableXvfbOption.js +37 -0
  96. package/dist/options/FullExecutionOption.d.ts +18 -0
  97. package/dist/options/FullExecutionOption.d.ts.map +1 -0
  98. package/dist/options/FullExecutionOption.js +37 -0
  99. package/dist/options/HeapNodeIdOption.d.ts +19 -0
  100. package/dist/options/HeapNodeIdOption.d.ts.map +1 -0
  101. package/dist/options/HeapNodeIdOption.js +46 -0
  102. package/dist/options/HelperOption.d.ts +19 -0
  103. package/dist/options/HelperOption.d.ts.map +1 -0
  104. package/dist/options/HelperOption.js +39 -0
  105. package/dist/options/InteractionOption.d.ts +19 -0
  106. package/dist/options/InteractionOption.d.ts.map +1 -0
  107. package/dist/options/InteractionOption.js +42 -0
  108. package/dist/options/NumberOfRunsOption.d.ts +20 -0
  109. package/dist/options/NumberOfRunsOption.d.ts.map +1 -0
  110. package/dist/options/NumberOfRunsOption.js +44 -0
  111. package/dist/options/RemoteBrowserDebugOption.d.ts +18 -0
  112. package/dist/options/RemoteBrowserDebugOption.d.ts.map +1 -0
  113. package/dist/options/RemoteBrowserDebugOption.js +37 -0
  114. package/dist/options/RunningModeOption.d.ts +19 -0
  115. package/dist/options/RunningModeOption.d.ts.map +1 -0
  116. package/dist/options/RunningModeOption.js +40 -0
  117. package/dist/options/ScenarioFileOption.d.ts +19 -0
  118. package/dist/options/ScenarioFileOption.d.ts.map +1 -0
  119. package/dist/options/ScenarioFileOption.js +44 -0
  120. package/dist/options/SetContinuousTestOption.d.ts +18 -0
  121. package/dist/options/SetContinuousTestOption.d.ts.map +1 -0
  122. package/dist/options/SetContinuousTestOption.js +37 -0
  123. package/dist/options/SetDeviceOption.d.ts +19 -0
  124. package/dist/options/SetDeviceOption.d.ts.map +1 -0
  125. package/dist/options/SetDeviceOption.js +46 -0
  126. package/dist/options/SetWorkingDirectoryOption.d.ts +20 -0
  127. package/dist/options/SetWorkingDirectoryOption.d.ts.map +1 -0
  128. package/dist/options/SetWorkingDirectoryOption.js +40 -0
  129. package/dist/options/SilentOption.d.ts +19 -0
  130. package/dist/options/SilentOption.d.ts.map +1 -0
  131. package/dist/options/SilentOption.js +40 -0
  132. package/dist/options/SkipExtraOperationOption.d.ts +18 -0
  133. package/dist/options/SkipExtraOperationOption.d.ts.map +1 -0
  134. package/dist/options/SkipExtraOperationOption.js +37 -0
  135. package/dist/options/SkipGCOption.d.ts +18 -0
  136. package/dist/options/SkipGCOption.d.ts.map +1 -0
  137. package/dist/options/SkipGCOption.js +37 -0
  138. package/dist/options/SkipScreenshotOption.d.ts +18 -0
  139. package/dist/options/SkipScreenshotOption.d.ts.map +1 -0
  140. package/dist/options/SkipScreenshotOption.js +37 -0
  141. package/dist/options/SkipScrollOption.d.ts +18 -0
  142. package/dist/options/SkipScrollOption.d.ts.map +1 -0
  143. package/dist/options/SkipScrollOption.js +37 -0
  144. package/dist/options/SkipSnapshotOption.d.ts +18 -0
  145. package/dist/options/SkipSnapshotOption.d.ts.map +1 -0
  146. package/dist/options/SkipSnapshotOption.js +37 -0
  147. package/dist/options/SkipWarmupOption.d.ts +18 -0
  148. package/dist/options/SkipWarmupOption.d.ts.map +1 -0
  149. package/dist/options/SkipWarmupOption.js +37 -0
  150. package/dist/options/VerboseOption.d.ts +19 -0
  151. package/dist/options/VerboseOption.d.ts.map +1 -0
  152. package/dist/options/VerboseOption.js +40 -0
  153. package/dist/options/heap/BaselineFileOption.d.ts +18 -0
  154. package/dist/options/heap/BaselineFileOption.d.ts.map +1 -0
  155. package/dist/options/heap/BaselineFileOption.js +53 -0
  156. package/dist/options/heap/FinalFileOption.d.ts +18 -0
  157. package/dist/options/heap/FinalFileOption.d.ts.map +1 -0
  158. package/dist/options/heap/FinalFileOption.js +53 -0
  159. package/dist/options/heap/JSEngineOption.d.ts +18 -0
  160. package/dist/options/heap/JSEngineOption.d.ts.map +1 -0
  161. package/dist/options/heap/JSEngineOption.js +46 -0
  162. package/dist/options/heap/LogTraceAsClusterOption.d.ts +18 -0
  163. package/dist/options/heap/LogTraceAsClusterOption.d.ts.map +1 -0
  164. package/dist/options/heap/LogTraceAsClusterOption.js +37 -0
  165. package/dist/options/heap/OversizeThresholdOption.d.ts +19 -0
  166. package/dist/options/heap/OversizeThresholdOption.d.ts.map +1 -0
  167. package/dist/options/heap/OversizeThresholdOption.js +45 -0
  168. package/dist/options/heap/SnapshotDirectoryOption.d.ts +18 -0
  169. package/dist/options/heap/SnapshotDirectoryOption.d.ts.map +1 -0
  170. package/dist/options/heap/SnapshotDirectoryOption.js +50 -0
  171. package/dist/options/heap/SnapshotFileOption.d.ts +18 -0
  172. package/dist/options/heap/SnapshotFileOption.d.ts.map +1 -0
  173. package/dist/options/heap/SnapshotFileOption.js +50 -0
  174. package/dist/options/heap/TargetFileOption.d.ts +18 -0
  175. package/dist/options/heap/TargetFileOption.d.ts.map +1 -0
  176. package/dist/options/heap/TargetFileOption.js +53 -0
  177. package/dist/options/heap/TraceAllObjectsOption.d.ts +18 -0
  178. package/dist/options/heap/TraceAllObjectsOption.d.ts.map +1 -0
  179. package/dist/options/heap/TraceAllObjectsOption.js +38 -0
  180. package/dist/options/heap/leak-filter/LeakFilterFileOption.d.ts +19 -0
  181. package/dist/options/heap/leak-filter/LeakFilterFileOption.d.ts.map +1 -0
  182. package/dist/options/heap/leak-filter/LeakFilterFileOption.js +41 -0
  183. package/dist/options/heap/leak-filter/examples/FilterLib.d.ts +12 -0
  184. package/dist/options/heap/leak-filter/examples/FilterLib.d.ts.map +1 -0
  185. package/dist/options/heap/leak-filter/examples/FilterLib.js +30 -0
  186. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-1.d.ts +13 -0
  187. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-1.d.ts.map +1 -0
  188. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-1.js +30 -0
  189. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-2.d.ts +16 -0
  190. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-2.d.ts.map +1 -0
  191. package/dist/options/heap/leak-filter/examples/dup-string-as-leak.example-2.js +28 -0
  192. package/dist/options/heap/leak-filter/examples/large-object-as-leak.example.d.ts +3 -0
  193. package/dist/options/heap/leak-filter/examples/large-object-as-leak.example.d.ts.map +1 -0
  194. package/dist/options/heap/leak-filter/examples/large-object-as-leak.example.js +13 -0
  195. package/dist/runner.d.ts +11 -0
  196. package/dist/runner.d.ts.map +1 -0
  197. package/dist/runner.js +38 -0
  198. package/package.json +59 -0
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SetWorkingDirectoryOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<{
17
+ workDir?: string;
18
+ }>;
19
+ }
20
+ //# sourceMappingURL=SetWorkingDirectoryOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetWorkingDirectoryOption.d.ts","sourceRoot":"","sources":["../../src/options/SetWorkingDirectoryOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAY,YAAY,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,UAAU;IAC/D,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CACT,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC;CAQ/B"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SetWorkingDirectoryOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'work-dir';
25
+ }
26
+ getDescription() {
27
+ return 'set the working directory of the current run';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ const name = this.getOptionName();
32
+ const ret = {};
33
+ if (args[name]) {
34
+ ret.workDir = args[name];
35
+ }
36
+ return ret;
37
+ });
38
+ }
39
+ }
40
+ exports.default = SetWorkingDirectoryOption;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SilentOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getOptionShortcut(): string;
16
+ getDescription(): string;
17
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=SilentOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SilentOption.d.ts","sourceRoot":"","sources":["../../src/options/SilentOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU;IAClD,aAAa,IAAI,MAAM;IAIvB,iBAAiB,IAAI,MAAM;IAI3B,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SilentOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'silent';
25
+ }
26
+ getOptionShortcut() {
27
+ return 's';
28
+ }
29
+ getDescription() {
30
+ return 'mute all terminal output';
31
+ }
32
+ parse(config, args) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ if (args[this.getOptionName()] || args[this.getOptionShortcut()]) {
35
+ config.muteConsole = true;
36
+ }
37
+ });
38
+ }
39
+ }
40
+ exports.default = SilentOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipExtraOperationOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipExtraOperationOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipExtraOperationOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipExtraOperationOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,UAAU;IAC9D,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipExtraOperationOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-extra-ops';
25
+ }
26
+ getDescription() {
27
+ return 'skip doing extra interactions (e.g., scrolling and waiting) on target and final page';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args['skip-extra-ops'] || args['skip-extra-op']) {
32
+ config.skipExtraOps = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipExtraOperationOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipGCOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipGCOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipGCOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipGCOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU;IAClD,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipGCOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-gc';
25
+ }
26
+ getDescription() {
27
+ return 'skip doing garbage collection in browser';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args[this.getOptionName()]) {
32
+ config.skipGC = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipGCOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipScreenshotOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipScreenshotOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipScreenshotOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipScreenshotOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,UAAU;IAC1D,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipScreenshotOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-screenshot';
25
+ }
26
+ getDescription() {
27
+ return 'skip taking screenshots';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args['skip-screenshot']) {
32
+ config.skipScreenshot = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipScreenshotOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipScrollOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipScrollOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipScrollOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipScrollOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,UAAU;IACtD,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipScrollOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-scroll';
25
+ }
26
+ getDescription() {
27
+ return 'skip scrolling target page in browser';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args['skip-scroll']) {
32
+ config.skipScroll = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipScrollOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipSnapshotOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipSnapshotOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipSnapshotOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipSnapshotOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IACxD,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipSnapshotOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-snapshot';
25
+ }
26
+ getDescription() {
27
+ return 'skip taking heap snapshots';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args['skip-snapshot']) {
32
+ config.skipSnapshot = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipSnapshotOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class SkipWarmupOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getDescription(): string;
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=SkipWarmupOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkipWarmupOption.d.ts","sourceRoot":"","sources":["../../src/options/SkipWarmupOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,UAAU;IACtD,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class SkipWarmupOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'skip-warmup';
25
+ }
26
+ getDescription() {
27
+ return 'skip warming up web server';
28
+ }
29
+ parse(config, args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (args[this.getOptionName()]) {
32
+ config.skipWarmup = true;
33
+ }
34
+ });
35
+ }
36
+ }
37
+ exports.default = SkipWarmupOption;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import type { MemLabConfig } from '@memlab/core';
12
+ import { BaseOption } from '@memlab/core';
13
+ export default class VerboseOption extends BaseOption {
14
+ getOptionName(): string;
15
+ getOptionShortcut(): string | null;
16
+ getDescription(): string;
17
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=VerboseOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VerboseOption.d.ts","sourceRoot":"","sources":["../../src/options/VerboseOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,UAAU;IACnD,aAAa,IAAI,MAAM;IAIvB,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAIlC,cAAc,IAAI,MAAM;IAIlB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAKnE"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const core_1 = require("@memlab/core");
22
+ class VerboseOption extends core_1.BaseOption {
23
+ getOptionName() {
24
+ return 'verbose';
25
+ }
26
+ getOptionShortcut() {
27
+ return 'v';
28
+ }
29
+ getDescription() {
30
+ return 'show more details';
31
+ }
32
+ parse(config, args) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ if (args.verbose || args.v) {
35
+ config.verbose = true;
36
+ }
37
+ });
38
+ }
39
+ }
40
+ exports.default = VerboseOption;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @emails oncall+ws_labs
8
+ * @format
9
+ */
10
+ import type { ParsedArgs } from 'minimist';
11
+ import { BaseOption, MemLabConfig } from '@memlab/core';
12
+ export default class BaselineFileOption extends BaseOption {
13
+ getOptionName(): string;
14
+ getDescription(): string;
15
+ getExampleValues(): string[];
16
+ parse(config: MemLabConfig, args: ParsedArgs): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=BaselineFileOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaselineFileOption.d.ts","sourceRoot":"","sources":["../../../src/options/heap/BaselineFileOption.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAC,UAAU,EAAE,YAAY,EAAQ,MAAM,cAAc,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,UAAU;IACxD,aAAa,IAAI,MAAM;IAIvB,cAAc,IAAI,MAAM;IAIxB,gBAAgB,IAAI,MAAM,EAAE;IAItB,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAcnE"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ *
8
+ * @emails oncall+ws_labs
9
+ * @format
10
+ */
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ var __importDefault = (this && this.__importDefault) || function (mod) {
21
+ return (mod && mod.__esModule) ? mod : { "default": mod };
22
+ };
23
+ Object.defineProperty(exports, "__esModule", { value: true });
24
+ const fs_1 = __importDefault(require("fs"));
25
+ const core_1 = require("@memlab/core");
26
+ class BaselineFileOption extends core_1.BaseOption {
27
+ getOptionName() {
28
+ return 'baseline';
29
+ }
30
+ getDescription() {
31
+ return 'set file path of the baseline heap snapshot';
32
+ }
33
+ getExampleValues() {
34
+ return ['/tmp/baseline.heapsnapshot'];
35
+ }
36
+ parse(config, args) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ if (!args.baseline) {
39
+ return;
40
+ }
41
+ const file = args.baseline;
42
+ if (!fs_1.default.existsSync(file)) {
43
+ core_1.utils.haltOrThrow(`Invalid snapshot file: ${file}`);
44
+ }
45
+ config.useExternalSnapshot = true;
46
+ if (!config.externalSnapshotFilePaths) {
47
+ config.externalSnapshotFilePaths = [];
48
+ }
49
+ config.externalSnapshotFilePaths[0] = file;
50
+ });
51
+ }
52
+ }
53
+ exports.default = BaselineFileOption;