@appland/appmap 3.31.0 → 3.32.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 (39) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/built/appmap.html +1 -1
  3. package/built/cli.js +2 -121
  4. package/built/cli.js.map +1 -1
  5. package/built/cmds/inspect/inspect.js +55 -0
  6. package/built/cmds/inspect/inspect.js.map +1 -0
  7. package/built/functionStats.js +9 -0
  8. package/built/functionStats.js.map +1 -1
  9. package/built/inspect/context.js +66 -0
  10. package/built/inspect/context.js.map +1 -0
  11. package/built/inspect/filter.js +8 -5
  12. package/built/inspect/filter.js.map +1 -1
  13. package/built/inspect/home.js +14 -9
  14. package/built/inspect/home.js.map +1 -1
  15. package/built/inspect/navigate.js +15 -0
  16. package/built/inspect/navigate.js.map +1 -0
  17. package/built/inspect/reset.js +5 -5
  18. package/built/inspect/reset.js.map +1 -1
  19. package/built/inspect/ui.js +121 -0
  20. package/built/inspect/ui.js.map +1 -0
  21. package/built/inspect/undoFilter.js +5 -5
  22. package/built/inspect/undoFilter.js.map +1 -1
  23. package/built/main.js.map +1 -1
  24. package/built/search/{codeObjectMatcher.js → descentCodeObjectMatcher.js} +50 -17
  25. package/built/search/descentCodeObjectMatcher.js.map +1 -0
  26. package/built/search/findCodeObjects.js +96 -126
  27. package/built/search/findCodeObjects.js.map +1 -1
  28. package/built/search/findEvents.js +1 -1
  29. package/built/search/findEvents.js.map +1 -1
  30. package/built/search/iterateCodeObjectMatcher.js +37 -0
  31. package/built/search/iterateCodeObjectMatcher.js.map +1 -0
  32. package/built/search/matchSpec.js +11 -3
  33. package/built/search/matchSpec.js.map +1 -1
  34. package/built/utils.js +5 -1
  35. package/built/utils.js.map +1 -1
  36. package/package.json +2 -2
  37. package/built/inspect.js +0 -8
  38. package/built/inspect.js.map +0 -1
  39. package/built/search/codeObjectMatcher.js.map +0 -1
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const cli_progress_1 = __importDefault(require("cli-progress"));
7
+ const yargs_1 = __importDefault(require("yargs"));
8
+ const readline_1 = __importDefault(require("readline"));
9
+ const context_1 = __importDefault(require("./context"));
10
+ const undoFilter_1 = __importDefault(require("./undoFilter"));
11
+ const filter_1 = __importDefault(require("./filter"));
12
+ const reset_1 = __importDefault(require("./reset"));
13
+ const print_1 = __importDefault(require("./print"));
14
+ const home_1 = __importDefault(require("./home"));
15
+ const assert_1 = __importDefault(require("assert"));
16
+ const navigate_1 = __importDefault(require("./navigate"));
17
+ class UI {
18
+ constructor(appmapDir, codeObjectId) {
19
+ this.appmapDir = appmapDir;
20
+ this.codeObjectId = codeObjectId;
21
+ this.context = new context_1.default(appmapDir, codeObjectId);
22
+ }
23
+ async start() {
24
+ await this.search();
25
+ this.rl = readline_1.default.createInterface({
26
+ input: process.stdin,
27
+ output: process.stdout,
28
+ });
29
+ this.rl.on('close', function () {
30
+ yargs_1.default.exit(0, new Error());
31
+ });
32
+ this.home();
33
+ }
34
+ getCommand() {
35
+ (0, assert_1.default)(this.rl, 'readline is not initialized');
36
+ console.log();
37
+ this.rl.question('Command (h)ome, (p)rint, (f)ilter, (u)ndo filter, (r)eset filters, (n)avigate, (q)uit: ', (command) => {
38
+ // eslint-disable-next-line default-case
39
+ switch (command) {
40
+ case 'h':
41
+ this.home();
42
+ break;
43
+ case 'p':
44
+ this.print();
45
+ break;
46
+ case 'f':
47
+ this.filter();
48
+ break;
49
+ case 'u':
50
+ this.undoFilter();
51
+ break;
52
+ case 'n':
53
+ this.navigate();
54
+ break;
55
+ case 's':
56
+ this.save();
57
+ break;
58
+ case 'r':
59
+ this.reset();
60
+ break;
61
+ case 'q':
62
+ (0, assert_1.default)(this.rl, 'readline is not initialized');
63
+ this.rl.close();
64
+ break;
65
+ default:
66
+ this.getCommand();
67
+ }
68
+ });
69
+ }
70
+ home() {
71
+ (0, assert_1.default)(this.context.stats);
72
+ (0, home_1.default)(this.context, this.getCommand.bind(this));
73
+ }
74
+ filter() {
75
+ (0, filter_1.default)(this.rl, this.context, this.home.bind(this));
76
+ }
77
+ async undoFilter() {
78
+ await (0, undoFilter_1.default)(this.context, this.home.bind(this));
79
+ }
80
+ async reset() {
81
+ await (0, reset_1.default)(this.context, this.home.bind(this));
82
+ }
83
+ print() {
84
+ (0, assert_1.default)(this.context.stats);
85
+ (0, print_1.default)(this.context.stats, this.rl, this.getCommand.bind(this), this.home.bind(this));
86
+ }
87
+ save() {
88
+ this.context.save();
89
+ console.log(`Saved code object id ${this.context.codeObjectId}`);
90
+ this.home();
91
+ }
92
+ async navigate() {
93
+ (0, assert_1.default)(this.rl);
94
+ return (0, navigate_1.default)(this.rl, this.context, this.search.bind(this), this.home.bind(this));
95
+ }
96
+ async search() {
97
+ const performSearch = async () => {
98
+ console.warn('Finding matching AppMaps');
99
+ let progress = new cli_progress_1.default.SingleBar({}, cli_progress_1.default.Presets.shades_classic);
100
+ this.context.addListener('start', (count) => progress.start(count, 0));
101
+ this.context.addListener('increment', progress.increment.bind(progress));
102
+ this.context.addListener('collate', () => console.warn('Collating results...'));
103
+ this.context.addListener('stop', (count) => progress.stop());
104
+ await this.context.findCodeObjects();
105
+ if (!this.context.codeObjectMatches) {
106
+ console.warn(`Code object '${this.context.codeObjectId}' not found`);
107
+ return this.navigate();
108
+ }
109
+ console.warn('Finding matching Events');
110
+ await this.context.buildStats();
111
+ };
112
+ try {
113
+ await performSearch();
114
+ }
115
+ finally {
116
+ this.context.removeAllListeners();
117
+ }
118
+ }
119
+ }
120
+ exports.default = UI;
121
+ //# sourceMappingURL=ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/inspect/ui.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
- const undoFilter = async (filters, buildStats, home) => {
3
- if (filters.length > 0) {
4
- filters.pop();
5
- }
6
- await buildStats();
2
+ /**
3
+ * @param {import('./context').default} context
4
+ */
5
+ const undoFilter = async (context, home) => {
6
+ await context.undoFilter();
7
7
  console.log();
8
8
  home();
9
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"undoFilter.js","sourceRoot":"","sources":["../../src/inspect/undoFilter.js"],"names":[],"mappings":";AAAA,MAAM,UAAU,GAAG,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;IACrD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,OAAO,CAAC,GAAG,EAAE,CAAC;KACf;IACD,MAAM,UAAU,EAAE,CAAC;IACnB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC"}
1
+ {"version":3,"file":"undoFilter.js","sourceRoot":"","sources":["../../src/inspect/undoFilter.js"],"names":[],"mappings":";AAAA;;GAEG;AACH,MAAM,UAAU,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;IACzC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;IAC3B,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC"}