@openrewrite/rewrite 8.62.6 → 8.62.7

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 (79) hide show
  1. package/dist/javascript/parser.d.ts.map +1 -1
  2. package/dist/javascript/parser.js +9 -1
  3. package/dist/javascript/parser.js.map +1 -1
  4. package/dist/javascript/preconditions.d.ts +4 -3
  5. package/dist/javascript/preconditions.d.ts.map +1 -1
  6. package/dist/javascript/preconditions.js +11 -29
  7. package/dist/javascript/preconditions.js.map +1 -1
  8. package/dist/javascript/remove-import.d.ts +1 -0
  9. package/dist/javascript/remove-import.d.ts.map +1 -1
  10. package/dist/javascript/remove-import.js +76 -7
  11. package/dist/javascript/remove-import.js.map +1 -1
  12. package/dist/javascript/type-mapping.d.ts +4 -0
  13. package/dist/javascript/type-mapping.d.ts.map +1 -1
  14. package/dist/javascript/type-mapping.js +48 -33
  15. package/dist/javascript/type-mapping.js.map +1 -1
  16. package/dist/rpc/request/generate.d.ts +1 -1
  17. package/dist/rpc/request/generate.d.ts.map +1 -1
  18. package/dist/rpc/request/generate.js +6 -3
  19. package/dist/rpc/request/generate.js.map +1 -1
  20. package/dist/rpc/request/get-languages.d.ts +1 -1
  21. package/dist/rpc/request/get-languages.d.ts.map +1 -1
  22. package/dist/rpc/request/get-languages.js +6 -5
  23. package/dist/rpc/request/get-languages.js.map +1 -1
  24. package/dist/rpc/request/get-object.d.ts +1 -1
  25. package/dist/rpc/request/get-object.d.ts.map +1 -1
  26. package/dist/rpc/request/get-object.js +8 -4
  27. package/dist/rpc/request/get-object.js.map +1 -1
  28. package/dist/rpc/request/get-recipes.d.ts +1 -1
  29. package/dist/rpc/request/get-recipes.d.ts.map +1 -1
  30. package/dist/rpc/request/get-recipes.js +5 -3
  31. package/dist/rpc/request/get-recipes.js.map +1 -1
  32. package/dist/rpc/request/install-recipes.d.ts +1 -1
  33. package/dist/rpc/request/install-recipes.d.ts.map +1 -1
  34. package/dist/rpc/request/install-recipes.js +6 -3
  35. package/dist/rpc/request/install-recipes.js.map +1 -1
  36. package/dist/rpc/request/metrics.d.ts +42 -0
  37. package/dist/rpc/request/metrics.d.ts.map +1 -0
  38. package/dist/rpc/request/metrics.js +184 -0
  39. package/dist/rpc/request/metrics.js.map +1 -0
  40. package/dist/rpc/request/parse.d.ts +1 -1
  41. package/dist/rpc/request/parse.d.ts.map +1 -1
  42. package/dist/rpc/request/parse.js +7 -3
  43. package/dist/rpc/request/parse.js.map +1 -1
  44. package/dist/rpc/request/prepare-recipe.d.ts +1 -1
  45. package/dist/rpc/request/prepare-recipe.d.ts.map +1 -1
  46. package/dist/rpc/request/prepare-recipe.js +6 -3
  47. package/dist/rpc/request/prepare-recipe.js.map +1 -1
  48. package/dist/rpc/request/print.d.ts +1 -1
  49. package/dist/rpc/request/print.d.ts.map +1 -1
  50. package/dist/rpc/request/print.js +6 -3
  51. package/dist/rpc/request/print.js.map +1 -1
  52. package/dist/rpc/request/visit.d.ts +1 -1
  53. package/dist/rpc/request/visit.d.ts.map +1 -1
  54. package/dist/rpc/request/visit.js +8 -4
  55. package/dist/rpc/request/visit.js.map +1 -1
  56. package/dist/rpc/rewrite-rpc.d.ts +1 -0
  57. package/dist/rpc/rewrite-rpc.d.ts.map +1 -1
  58. package/dist/rpc/rewrite-rpc.js +12 -9
  59. package/dist/rpc/rewrite-rpc.js.map +1 -1
  60. package/dist/rpc/server.js +2 -0
  61. package/dist/rpc/server.js.map +1 -1
  62. package/dist/version.txt +1 -1
  63. package/package.json +1 -1
  64. package/src/javascript/parser.ts +13 -1
  65. package/src/javascript/preconditions.ts +10 -10
  66. package/src/javascript/remove-import.ts +75 -9
  67. package/src/javascript/type-mapping.ts +50 -30
  68. package/src/rpc/request/generate.ts +7 -3
  69. package/src/rpc/request/get-languages.ts +6 -5
  70. package/src/rpc/request/get-object.ts +10 -4
  71. package/src/rpc/request/get-recipes.ts +5 -3
  72. package/src/rpc/request/install-recipes.ts +6 -3
  73. package/src/rpc/request/metrics.ts +167 -0
  74. package/src/rpc/request/parse.ts +12 -6
  75. package/src/rpc/request/prepare-recipe.ts +7 -3
  76. package/src/rpc/request/print.ts +7 -3
  77. package/src/rpc/request/visit.ts +9 -4
  78. package/src/rpc/rewrite-rpc.ts +14 -9
  79. package/src/rpc/server.ts +3 -0
@@ -9,6 +9,6 @@ export declare class Generate {
9
9
  private readonly id;
10
10
  private readonly p;
11
11
  constructor(id: string, p: string);
12
- static handle(connection: rpc.MessageConnection, localObjects: Map<string, any>, preparedRecipes: Map<String, Recipe>, recipeCursors: WeakMap<Recipe, Cursor>, getObject: (id: string) => any): void;
12
+ static handle(connection: rpc.MessageConnection, localObjects: Map<string, any>, preparedRecipes: Map<String, Recipe>, recipeCursors: WeakMap<Recipe, Cursor>, getObject: (id: string) => any, metricsCsv?: string): void;
13
13
  }
14
14
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/generate.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAiB,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,MAAM,EAAa,MAAM,YAAY,CAAC;AAG9C,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,eAAe,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,qBAAa,QAAQ;IACL,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAU,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAA9B,EAAE,EAAE,MAAM,EAAmB,CAAC,EAAE,MAAM;IAGnE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,GAAG,GAAG,IAAI;CA4BtD"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/generate.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAAiB,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,MAAM,EAAa,MAAM,YAAY,CAAC;AAI9C,MAAM,WAAW,gBAAgB;IAC7B,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,eAAe,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,qBAAa,QAAQ;IACL,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAU,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAA9B,EAAE,EAAE,MAAM,EAAmB,CAAC,EAAE,MAAM;IAGnE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,GAAG,EAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CA8B3C"}
@@ -61,13 +61,16 @@ exports.Generate = void 0;
61
61
  const rpc = __importStar(require("vscode-jsonrpc/node"));
62
62
  const recipe_1 = require("../../recipe");
63
63
  const tree_1 = require("../../tree");
64
+ const metrics_1 = require("./metrics");
64
65
  class Generate {
65
66
  constructor(id, p) {
66
67
  this.id = id;
67
68
  this.p = p;
68
69
  }
69
- static handle(connection, localObjects, preparedRecipes, recipeCursors, getObject) {
70
- connection.onRequest(new rpc.RequestType("Generate"), (request) => __awaiter(this, void 0, void 0, function* () {
70
+ static handle(connection, localObjects, preparedRecipes, recipeCursors, getObject, metricsCsv) {
71
+ const target = { target: '' };
72
+ connection.onRequest(new rpc.RequestType("Generate"), (0, metrics_1.withMetrics)("Generate", target, metricsCsv)((request) => __awaiter(this, void 0, void 0, function* () {
73
+ target.target = request.id;
71
74
  const recipe = preparedRecipes.get(request.id);
72
75
  const response = {
73
76
  ids: [],
@@ -89,7 +92,7 @@ class Generate {
89
92
  }
90
93
  }
91
94
  return response;
92
- }));
95
+ })));
93
96
  }
94
97
  }
95
98
  exports.Generate = Generate;
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/rpc/request/generate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,yCAAoD;AACpD,qCAA8C;AAQ9C,MAAa,QAAQ;IACjB,YAA6B,EAAU,EAAmB,CAAS;QAAtC,OAAE,GAAF,EAAE,CAAQ;QAAmB,MAAC,GAAD,CAAC,CAAQ;IACnE,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAAiC,EACjC,YAA8B,EAC9B,eAAoC,EACpC,aAAsC,EACtC,SAA8B;QACxC,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAoC,UAAU,CAAC,EAAE,CAAO,OAAO,EAAE,EAAE;YACvG,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG;gBACb,GAAG,EAAE,EAAE;gBACP,eAAe,EAAE,EAAE;aACF,CAAC;YAEtB,IAAI,MAAM,IAAI,MAAM,YAAY,uBAAc,EAAE,CAAC;gBAC7C,IAAI,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACvC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,GAAG,IAAA,iBAAU,GAAE,CAAC;oBACtB,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACtC,CAAC;gBACD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAqB,CAAC;gBACrD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC5C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBAEjD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;oBACxB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;oBACrC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACnC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC1C,CAAC;YAEL,CAAC;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AApCD,4BAoCC"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/rpc/request/generate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,yCAAoD;AACpD,qCAA8C;AAE9C,uCAAsC;AAOtC,MAAa,QAAQ;IACjB,YAA6B,EAAU,EAAmB,CAAS;QAAtC,OAAE,GAAF,EAAE,CAAQ;QAAmB,MAAC,GAAD,CAAC,CAAQ;IACnE,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAAiC,EACjC,YAA8B,EAC9B,eAAoC,EACpC,aAAsC,EACtC,SAA8B,EAC9B,UAAmB;QAC7B,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC9B,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAoC,UAAU,CAAC,EAAE,IAAA,qBAAW,EAA6B,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAO,OAAO,EAAE,EAAE;YAC/K,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,QAAQ,GAAG;gBACb,GAAG,EAAE,EAAE;gBACP,eAAe,EAAE,EAAE;aACF,CAAC;YAEtB,IAAI,MAAM,IAAI,MAAM,YAAY,uBAAc,EAAE,CAAC;gBAC7C,IAAI,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACvC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACV,MAAM,GAAG,IAAA,iBAAU,GAAE,CAAC;oBACtB,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACtC,CAAC;gBACD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAqB,CAAC;gBACrD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC5C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;gBAEjD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;oBACxB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;oBACrC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACnC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC1C,CAAC;YAEL,CAAC;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAA,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAvCD,4BAuCC"}
@@ -1,5 +1,5 @@
1
1
  import * as rpc from "vscode-jsonrpc/node";
2
2
  export declare class GetLanguages {
3
- static handle(connection: rpc.MessageConnection): void;
3
+ static handle(connection: rpc.MessageConnection, metricsCsv?: string): void;
4
4
  }
5
5
  //# sourceMappingURL=get-languages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-languages.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-languages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAE3C,qBAAa,YAAY;IACrB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,GAAG,IAAI;CAYzD"}
1
+ {"version":3,"file":"get-languages.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-languages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAG3C,qBAAa,YAAY;IACrB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CAY9E"}
@@ -44,18 +44,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
45
  exports.GetLanguages = void 0;
46
46
  const rpc = __importStar(require("vscode-jsonrpc/node"));
47
+ const metrics_1 = require("./metrics");
47
48
  class GetLanguages {
48
- static handle(connection) {
49
- connection.onRequest(new rpc.RequestType0("GetLanguages"), () => __awaiter(this, void 0, void 0, function* () {
49
+ static handle(connection, metricsCsv) {
50
+ const target = { target: '' };
51
+ connection.onRequest(new rpc.RequestType0("GetLanguages"), (0, metrics_1.withMetrics0)("GetLanguages", target, metricsCsv)(() => __awaiter(this, void 0, void 0, function* () {
50
52
  // Include all languages you want this server to support receiving from a remote peer
51
- const languages = [
53
+ return [
52
54
  "org.openrewrite.text.PlainText",
53
55
  "org.openrewrite.json.tree.Json$Document",
54
56
  "org.openrewrite.java.tree.J$CompilationUnit",
55
57
  "org.openrewrite.javascript.tree.JS$CompilationUnit",
56
58
  ];
57
- return languages;
58
- }));
59
+ })));
59
60
  }
60
61
  }
61
62
  exports.GetLanguages = GetLanguages;
@@ -1 +1 @@
1
- {"version":3,"file":"get-languages.js","sourceRoot":"","sources":["../../../src/rpc/request/get-languages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA2C;AAE3C,MAAa,YAAY;IACrB,MAAM,CAAC,MAAM,CAAC,UAAiC;QAC3C,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,YAAY,CAAkB,cAAc,CAAC,EAAE,GAAS,EAAE;YACnF,qFAAqF;YACrF,MAAM,SAAS,GAAa;gBACxB,gCAAgC;gBAChC,yCAAyC;gBACzC,6CAA6C;gBAC7C,oDAAoD;aACvD,CAAC;YACF,OAAO,SAAS,CAAC;QACrB,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AAbD,oCAaC"}
1
+ {"version":3,"file":"get-languages.js","sourceRoot":"","sources":["../../../src/rpc/request/get-languages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA2C;AAC3C,uCAAuC;AAEvC,MAAa,YAAY;IACrB,MAAM,CAAC,MAAM,CAAC,UAAiC,EAAE,UAAmB;QAChE,MAAM,MAAM,GAAG,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC;QAC5B,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,YAAY,CAAkB,cAAc,CAAC,EAAE,IAAA,sBAAY,EAAW,cAAc,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,GAAS,EAAE;YAC9I,qFAAqF;YACrF,OAAO;gBACH,gCAAgC;gBAChC,yCAAyC;gBACzC,6CAA6C;gBAC7C,oDAAoD;aACvD,CAAC;QACN,CAAC,CAAA,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAbD,oCAaC"}
@@ -4,6 +4,6 @@ export declare class GetObject {
4
4
  private readonly id;
5
5
  private readonly sourceFileType?;
6
6
  constructor(id: string, sourceFileType?: string | undefined);
7
- static handle(connection: rpc.MessageConnection, remoteObjects: Map<string, any>, localObjects: Map<string, any | ((input: string) => any)>, localRefs: ReferenceMap, batchSize: number, trace: boolean): void;
7
+ static handle(connection: rpc.MessageConnection, remoteObjects: Map<string, any>, localObjects: Map<string, any | ((input: string) => any)>, localRefs: ReferenceMap, batchSize: number, trace: boolean, metricsCsv?: string): void;
8
8
  }
9
9
  //# sourceMappingURL=get-object.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-object.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-object.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C,qBAAa,SAAS;IACN,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gBADf,EAAE,EAAE,MAAM,EACV,cAAc,CAAC,EAAE,MAAM,YAAA;IAGpD,MAAM,CAAC,MAAM,CACT,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,CAAC,EACzD,SAAS,EAAE,YAAY,EACvB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,GACf,IAAI;CAuCV"}
1
+ {"version":3,"file":"get-object.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-object.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAG7C,qBAAa,SAAS;IACN,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gBADf,EAAE,EAAE,MAAM,EACV,cAAc,CAAC,EAAE,MAAM,YAAA;IAGpD,MAAM,CAAC,MAAM,CACT,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,CAAC,EACzD,SAAS,EAAE,YAAY,EACvB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,UAAU,CAAC,EAAE,MAAM,GACpB,IAAI;CA2CV"}
@@ -60,14 +60,16 @@ exports.GetObject = void 0;
60
60
  */
61
61
  const rpc = __importStar(require("vscode-jsonrpc/node"));
62
62
  const queue_1 = require("../queue");
63
+ const metrics_1 = require("./metrics");
63
64
  class GetObject {
64
65
  constructor(id, sourceFileType) {
65
66
  this.id = id;
66
67
  this.sourceFileType = sourceFileType;
67
68
  }
68
- static handle(connection, remoteObjects, localObjects, localRefs, batchSize, trace) {
69
+ static handle(connection, remoteObjects, localObjects, localRefs, batchSize, trace, metricsCsv) {
69
70
  const pendingData = new Map();
70
- connection.onRequest(new rpc.RequestType("GetObject"), (request) => __awaiter(this, void 0, void 0, function* () {
71
+ const target = { target: '' };
72
+ connection.onRequest(new rpc.RequestType("GetObject"), (0, metrics_1.withMetrics)("GetObject", target, metricsCsv)((request) => __awaiter(this, void 0, void 0, function* () {
71
73
  let objId = request.id;
72
74
  if (!localObjects.has(objId)) {
73
75
  return [
@@ -80,9 +82,11 @@ class GetObject {
80
82
  let obj = yield objectOrGenerator(objId);
81
83
  localObjects.set(objId, obj);
82
84
  }
85
+ const obj = localObjects.get(objId);
86
+ target.target = (0, metrics_1.extractSourcePath)(obj);
83
87
  let allData = pendingData.get(objId);
84
88
  if (!allData) {
85
- const after = localObjects.get(objId);
89
+ const after = obj;
86
90
  const before = remoteObjects.get(objId);
87
91
  allData = yield new queue_1.RpcSendQueue(localRefs, request.sourceFileType, trace).generate(after, before);
88
92
  pendingData.set(objId, allData);
@@ -94,7 +98,7 @@ class GetObject {
94
98
  pendingData.delete(objId);
95
99
  }
96
100
  return batch;
97
- }));
101
+ })));
98
102
  }
99
103
  }
100
104
  exports.GetObject = GetObject;
@@ -1 +1 @@
1
- {"version":3,"file":"get-object.js","sourceRoot":"","sources":["../../../src/rpc/request/get-object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,oCAAqE;AAGrE,MAAa,SAAS;IAClB,YAA6B,EAAU,EACV,cAAuB;QADvB,OAAE,GAAF,EAAE,CAAQ;QACV,mBAAc,GAAd,cAAc,CAAS;IACpD,CAAC;IAED,MAAM,CAAC,MAAM,CACT,UAAiC,EACjC,aAA+B,EAC/B,YAAyD,EACzD,SAAuB,EACvB,SAAiB,EACjB,KAAc;QAEd,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2B,CAAC;QAEvD,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAwB,WAAW,CAAC,EAAE,CAAM,OAAO,EAAC,EAAE;YAC1F,IAAI,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACH,EAAC,KAAK,EAAE,sBAAc,CAAC,MAAM,EAAC;oBAC9B,EAAC,KAAK,EAAE,sBAAc,CAAC,aAAa,EAAC;iBACxC,CAAC;YACN,CAAC;YAED,IAAI,iBAAiB,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;YACjD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;gBAC1C,IAAI,GAAG,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;YAED,IAAI,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAExC,OAAO,GAAG,MAAM,IAAI,oBAAY,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACnG,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAEhC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YAE3C,8CAA8C;YAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AAnDD,8BAmDC"}
1
+ {"version":3,"file":"get-object.js","sourceRoot":"","sources":["../../../src/rpc/request/get-object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,oCAAqE;AAErE,uCAAyD;AAEzD,MAAa,SAAS;IAClB,YAA6B,EAAU,EACV,cAAuB;QADvB,OAAE,GAAF,EAAE,CAAQ;QACV,mBAAc,GAAd,cAAc,CAAS;IACpD,CAAC;IAED,MAAM,CAAC,MAAM,CACT,UAAiC,EACjC,aAA+B,EAC/B,YAAyD,EACzD,SAAuB,EACvB,SAAiB,EACjB,KAAc,EACd,UAAmB;QAEnB,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2B,CAAC;QACvD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAE9B,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAwB,WAAW,CAAC,EAAE,IAAA,qBAAW,EAAiB,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAM,OAAO,EAAC,EAAE;YACvJ,IAAI,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,OAAO;oBACH,EAAC,KAAK,EAAE,sBAAc,CAAC,MAAM,EAAC;oBAC9B,EAAC,KAAK,EAAE,sBAAc,CAAC,aAAa,EAAC;iBACxC,CAAC;YACN,CAAC;YAED,IAAI,iBAAiB,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;YACjD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;gBAC1C,IAAI,GAAG,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;YAED,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,CAAC,MAAM,GAAG,IAAA,2BAAiB,EAAC,GAAG,CAAC,CAAC;YAEvC,IAAI,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,GAAG,CAAC;gBAClB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAExC,OAAO,GAAG,MAAM,IAAI,oBAAY,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACnG,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAEhC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YAE3C,8CAA8C;YAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC,CAAA,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAxDD,8BAwDC"}
@@ -1,6 +1,6 @@
1
1
  import * as rpc from "vscode-jsonrpc/node";
2
2
  import { RecipeRegistry } from "../../recipe";
3
3
  export declare class GetRecipes {
4
- static handle(connection: rpc.MessageConnection, registry: RecipeRegistry): void;
4
+ static handle(connection: rpc.MessageConnection, registry: RecipeRegistry, metricsCsv?: string): void;
5
5
  }
6
6
  //# sourceMappingURL=get-recipes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-recipes.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-recipes.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAmB,cAAc,EAAC,MAAM,cAAc,CAAC;AAE9D,qBAAa,UAAU;IACnB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI;CASnF"}
1
+ {"version":3,"file":"get-recipes.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/get-recipes.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAmB,cAAc,EAAC,MAAM,cAAc,CAAC;AAG9D,qBAAa,UAAU;IACnB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CAUxG"}
@@ -59,15 +59,17 @@ exports.GetRecipes = void 0;
59
59
  * limitations under the License.
60
60
  */
61
61
  const rpc = __importStar(require("vscode-jsonrpc/node"));
62
+ const metrics_1 = require("./metrics");
62
63
  class GetRecipes {
63
- static handle(connection, registry) {
64
- connection.onRequest(new rpc.RequestType0("GetRecipes"), () => __awaiter(this, void 0, void 0, function* () {
64
+ static handle(connection, registry, metricsCsv) {
65
+ const target = { target: '' };
66
+ connection.onRequest(new rpc.RequestType0("GetRecipes"), (0, metrics_1.withMetrics0)("GetRecipes", target, metricsCsv)(() => __awaiter(this, void 0, void 0, function* () {
65
67
  const recipes = [];
66
68
  for (const [_name, recipe] of registry.all.entries()) {
67
69
  recipes.push(yield new recipe().descriptor());
68
70
  }
69
71
  return recipes;
70
- }));
72
+ })));
71
73
  }
72
74
  }
73
75
  exports.GetRecipes = GetRecipes;
@@ -1 +1 @@
1
- {"version":3,"file":"get-recipes.js","sourceRoot":"","sources":["../../../src/rpc/request/get-recipes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAG3C,MAAa,UAAU;IACnB,MAAM,CAAC,MAAM,CAAC,UAAiC,EAAE,QAAwB;QACrE,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,YAAY,CAAiD,YAAY,CAAC,EAAE,GAAS,EAAE;YAChH,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,OAAO,CAAC;QACnB,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AAVD,gCAUC"}
1
+ {"version":3,"file":"get-recipes.js","sourceRoot":"","sources":["../../../src/rpc/request/get-recipes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAE3C,uCAAuC;AAEvC,MAAa,UAAU;IACnB,MAAM,CAAC,MAAM,CAAC,UAAiC,EAAE,QAAwB,EAAE,UAAmB;QAC1F,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC9B,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,YAAY,CAAiD,YAAY,CAAC,EAAE,IAAA,sBAAY,EAA0C,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,GAAS,EAAE;YACxM,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,OAAO,CAAC;QACnB,CAAC,CAAA,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAXD,gCAWC"}
@@ -14,6 +14,6 @@ export declare class InstallRecipes {
14
14
  packageName: string;
15
15
  version?: string;
16
16
  });
17
- static handle(connection: rpc.MessageConnection, installDir: string, registry: RecipeRegistry, logger?: rpc.Logger): void;
17
+ static handle(connection: rpc.MessageConnection, installDir: string, registry: RecipeRegistry, logger?: rpc.Logger, metricsCsv?: string): void;
18
18
  }
19
19
  //# sourceMappingURL=install-recipes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-recipes.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/install-recipes.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAK5C,MAAM,WAAW,sBAAsB;IACnC,gBAAgB,EAAE,MAAM,CAAA;CAC3B;AAqCD,qBAAa,cAAc;IAMX,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC;;;;OAIG;gBAC0B,OAAO,EAAE,MAAM,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAGxF,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAC/E,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;CA+D3C"}
1
+ {"version":3,"file":"install-recipes.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/install-recipes.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAM5C,MAAM,WAAW,sBAAsB;IACnC,gBAAgB,EAAE,MAAM,CAAA;CAC3B;AAqCD,qBAAa,cAAc;IAMX,OAAO,CAAC,QAAQ,CAAC,OAAO;IALpC;;;;OAIG;gBAC0B,OAAO,EAAE,MAAM,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAGxF,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAC/E,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CAiEhE"}
@@ -62,6 +62,7 @@ const rpc = __importStar(require("vscode-jsonrpc/node"));
62
62
  const path = __importStar(require("path"));
63
63
  const fs = __importStar(require("fs"));
64
64
  const child_process_1 = require("child_process");
65
+ const metrics_1 = require("./metrics");
65
66
  /**
66
67
  * Helper function to spawn npm/npx commands with logging and promise handling
67
68
  */
@@ -100,8 +101,10 @@ class InstallRecipes {
100
101
  constructor(recipes) {
101
102
  this.recipes = recipes;
102
103
  }
103
- static handle(connection, installDir, registry, logger) {
104
- connection.onRequest(new rpc.RequestType("InstallRecipes"), (request) => __awaiter(this, void 0, void 0, function* () {
104
+ static handle(connection, installDir, registry, logger, metricsCsv) {
105
+ const target = { target: '' };
106
+ connection.onRequest(new rpc.RequestType("InstallRecipes"), (0, metrics_1.withMetrics)("InstallRecipes", target, metricsCsv)((request) => __awaiter(this, void 0, void 0, function* () {
107
+ target.target = typeof request.recipes === "object" ? request.recipes.packageName : request.recipes;
105
108
  const beforeInstall = registry.all.size;
106
109
  let resolvedPath;
107
110
  let recipesName = request.recipes;
@@ -157,7 +160,7 @@ class InstallRecipes {
157
160
  throw new Error(`${recipesName} does not export an 'activate' function`);
158
161
  }
159
162
  return { recipesInstalled: registry.all.size - beforeInstall };
160
- }));
163
+ })));
161
164
  }
162
165
  }
163
166
  exports.InstallRecipes = InstallRecipes;
@@ -1 +1 @@
1
- {"version":3,"file":"install-recipes.js","sourceRoot":"","sources":["../../../src/rpc/request/install-recipes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-recipes.js","sourceRoot":"","sources":["../../../src/rpc/request/install-recipes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import * as rpc from "vscode-jsonrpc/node";
2
+ import { Cursor } from "../../tree";
3
+ /**
4
+ * Extracts the sourcePath from a tree object, either directly from a SourceFile
5
+ * or by finding the nearest SourceFile via a cursor.
6
+ *
7
+ * @param tree The tree object to extract sourcePath from
8
+ * @param cursor Optional cursor to find the nearest SourceFile
9
+ * @returns The sourcePath or empty string if not found
10
+ */
11
+ export declare function extractSourcePath(tree: any, cursor?: Cursor): string;
12
+ /**
13
+ * Initializes the metrics CSV file with a header if it doesn't already exist or is empty.
14
+ * If the file already contains the correct header, this function is a no-op.
15
+ *
16
+ * @param metricsCsv The path to the CSV file for recording metrics
17
+ * @param logger Optional logger for warnings
18
+ */
19
+ export declare function initializeMetricsCsv(metricsCsv?: string, logger?: rpc.Logger): void;
20
+ /**
21
+ * Wraps an RPC request handler to record performance metrics to a CSV file.
22
+ *
23
+ * @param request The request type name (e.g., "Visit", "GetObject")
24
+ * @param target A mutable object containing the target identifier for metrics
25
+ * @param metricsCsv Optional path to the CSV file for recording metrics
26
+ * @returns A function that wraps a request handler with metrics recording
27
+ */
28
+ export declare function withMetrics<P, R>(request: string, target: {
29
+ target: string;
30
+ }, metricsCsv?: string): (handler: (request: P) => Promise<R>) => (request: P) => Promise<R>;
31
+ /**
32
+ * Wraps an RPC request handler without parameters (RequestType0) to record performance metrics.
33
+ *
34
+ * @param request The request type name (e.g., "GetLanguages", "GetRecipes")
35
+ * @param target A mutable object containing the target identifier for metrics
36
+ * @param metricsCsv Optional path to the CSV file for recording metrics
37
+ * @returns A function that wraps a request handler with metrics recording
38
+ */
39
+ export declare function withMetrics0<R>(request: string, target: {
40
+ target: string;
41
+ }, metricsCsv?: string): (handler: () => Promise<R>) => (token: any) => Promise<R>;
42
+ //# sourceMappingURL=metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/metrics.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAC,MAAM,EAA2B,MAAM,YAAY,CAAC;AAI5D;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAapE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CA2BnF;AA4BD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,EAC5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,GACpB,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAMrE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1B,UAAU,CAAC,EAAE,MAAM,GACpB,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAM3D"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.extractSourcePath = extractSourcePath;
46
+ exports.initializeMetricsCsv = initializeMetricsCsv;
47
+ exports.withMetrics = withMetrics;
48
+ exports.withMetrics0 = withMetrics0;
49
+ /*
50
+ * Copyright 2025 the original author or authors.
51
+ * <p>
52
+ * Licensed under the Moderne Source Available License (the "License");
53
+ * you may not use this file except in compliance with the License.
54
+ * You may obtain a copy of the License at
55
+ * <p>
56
+ * https://docs.moderne.io/licensing/moderne-source-available-license
57
+ * <p>
58
+ * Unless required by applicable law or agreed to in writing, software
59
+ * distributed under the License is distributed on an "AS IS" BASIS,
60
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
61
+ * See the License for the specific language governing permissions and
62
+ * limitations under the License.
63
+ */
64
+ const fs = __importStar(require("fs"));
65
+ const tree_1 = require("../../tree");
66
+ const CSV_HEADER = 'request,target,durationMs,memoryUsedBytes,memoryMaxBytes';
67
+ /**
68
+ * Extracts the sourcePath from a tree object, either directly from a SourceFile
69
+ * or by finding the nearest SourceFile via a cursor.
70
+ *
71
+ * @param tree The tree object to extract sourcePath from
72
+ * @param cursor Optional cursor to find the nearest SourceFile
73
+ * @returns The sourcePath or empty string if not found
74
+ */
75
+ function extractSourcePath(tree, cursor) {
76
+ if ((0, tree_1.isSourceFile)(tree)) {
77
+ return tree.sourcePath || '';
78
+ }
79
+ if (cursor) {
80
+ const sourceFile = cursor.firstEnclosing(t => (0, tree_1.isSourceFile)(t));
81
+ if (sourceFile) {
82
+ return sourceFile.sourcePath || '';
83
+ }
84
+ }
85
+ return '';
86
+ }
87
+ /**
88
+ * Initializes the metrics CSV file with a header if it doesn't already exist or is empty.
89
+ * If the file already contains the correct header, this function is a no-op.
90
+ *
91
+ * @param metricsCsv The path to the CSV file for recording metrics
92
+ * @param logger Optional logger for warnings
93
+ */
94
+ function initializeMetricsCsv(metricsCsv, logger) {
95
+ if (!metricsCsv) {
96
+ return;
97
+ }
98
+ try {
99
+ // Check if file exists and has content
100
+ if (fs.existsSync(metricsCsv)) {
101
+ const content = fs.readFileSync(metricsCsv, 'utf8');
102
+ const firstLine = content.split('\n')[0];
103
+ // If file already has the correct header, skip initialization
104
+ if (firstLine.trim() === CSV_HEADER) {
105
+ return;
106
+ }
107
+ // File exists but has incorrect header - warn and reset
108
+ if (firstLine.trim()) {
109
+ logger === null || logger === void 0 ? void 0 : logger.warn(`Metrics CSV file ${metricsCsv} has incorrect header. Expected '${CSV_HEADER}' but found '${firstLine.trim()}'. Resetting file.`);
110
+ }
111
+ }
112
+ // Write header to new or empty file (overwrites existing file with incorrect header)
113
+ fs.writeFileSync(metricsCsv, CSV_HEADER + '\n');
114
+ }
115
+ catch (err) {
116
+ console.error('Failed to initialize metrics CSV:', err);
117
+ }
118
+ }
119
+ /**
120
+ * Internal function to wrap a handler with metrics recording.
121
+ */
122
+ function wrapWithMetrics(handler, target, request, metricsCsv) {
123
+ return __awaiter(this, void 0, void 0, function* () {
124
+ if (!metricsCsv) {
125
+ // No metrics recording requested, just execute the handler
126
+ return handler();
127
+ }
128
+ const startTime = Date.now();
129
+ try {
130
+ const result = yield handler();
131
+ recordMetrics(metricsCsv, target.target, request, startTime);
132
+ return result;
133
+ }
134
+ catch (error) {
135
+ recordMetrics(metricsCsv, target.target, request, startTime);
136
+ throw error;
137
+ }
138
+ });
139
+ }
140
+ /**
141
+ * Wraps an RPC request handler to record performance metrics to a CSV file.
142
+ *
143
+ * @param request The request type name (e.g., "Visit", "GetObject")
144
+ * @param target A mutable object containing the target identifier for metrics
145
+ * @param metricsCsv Optional path to the CSV file for recording metrics
146
+ * @returns A function that wraps a request handler with metrics recording
147
+ */
148
+ function withMetrics(request, target, metricsCsv) {
149
+ return (handler) => {
150
+ return (requestParam) => __awaiter(this, void 0, void 0, function* () {
151
+ return wrapWithMetrics(() => handler(requestParam), target, request, metricsCsv);
152
+ });
153
+ };
154
+ }
155
+ /**
156
+ * Wraps an RPC request handler without parameters (RequestType0) to record performance metrics.
157
+ *
158
+ * @param request The request type name (e.g., "GetLanguages", "GetRecipes")
159
+ * @param target A mutable object containing the target identifier for metrics
160
+ * @param metricsCsv Optional path to the CSV file for recording metrics
161
+ * @returns A function that wraps a request handler with metrics recording
162
+ */
163
+ function withMetrics0(request, target, metricsCsv) {
164
+ return (handler) => {
165
+ return (_) => __awaiter(this, void 0, void 0, function* () {
166
+ return wrapWithMetrics(handler, target, request, metricsCsv);
167
+ });
168
+ };
169
+ }
170
+ function recordMetrics(metricsCsv, target, request, startTime) {
171
+ const endTime = Date.now();
172
+ const memEnd = process.memoryUsage();
173
+ const durationMs = endTime - startTime;
174
+ const memoryUsedBytes = memEnd.heapUsed;
175
+ const memoryMaxBytes = memEnd.heapTotal;
176
+ const csvRow = `${request},${target},${durationMs},${memoryUsedBytes},${memoryMaxBytes}\n`;
177
+ try {
178
+ fs.appendFileSync(metricsCsv, csvRow);
179
+ }
180
+ catch (err) {
181
+ console.error('Failed to write metrics to CSV:', err);
182
+ }
183
+ }
184
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/rpc/request/metrics.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,6 @@ export declare class Parse {
4
4
  private readonly inputs;
5
5
  private readonly relativeTo?;
6
6
  constructor(inputs: ParserInput[], relativeTo?: string | undefined);
7
- static handle(connection: rpc.MessageConnection, localObjects: Map<string, ((input: string) => any) | any>): void;
7
+ static handle(connection: rpc.MessageConnection, localObjects: Map<string, ((input: string) => any) | any>, metricsCsv?: string): void;
8
8
  }
9
9
  //# sourceMappingURL=parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/parse.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAG3C,OAAO,EAAC,WAAW,EAAU,MAAM,cAAc,CAAC;AAKlD,qBAAa,KAAK;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,MAAM,EAAE,WAAW,EAAE,EACrB,UAAU,CAAC,EAAE,MAAM,YAAA;IAGhD,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI;CAyBjF"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/parse.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAC,WAAW,EAAU,MAAM,cAAc,CAAC;AAMlD,qBAAa,KAAK;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,MAAM,EAAE,WAAW,EAAE,EACrB,UAAU,CAAC,EAAE,MAAM,YAAA;IAGhD,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,iBAAiB,EACjC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,EACzD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CA8B3C"}
@@ -63,13 +63,17 @@ const execution_1 = require("../../execution");
63
63
  const parser_1 = require("../../parser");
64
64
  const uuid_1 = require("../../uuid");
65
65
  const immer_1 = require("immer");
66
+ const metrics_1 = require("./metrics");
66
67
  class Parse {
67
68
  constructor(inputs, relativeTo) {
68
69
  this.inputs = inputs;
69
70
  this.relativeTo = relativeTo;
70
71
  }
71
- static handle(connection, localObjects) {
72
- connection.onRequest(new rpc.RequestType("Parse"), (request) => __awaiter(this, void 0, void 0, function* () {
72
+ static handle(connection, localObjects, metricsCsv) {
73
+ const target = { target: '' };
74
+ connection.onRequest(new rpc.RequestType("Parse"), (0, metrics_1.withMetrics)("Parse", target, metricsCsv)((request) => __awaiter(this, void 0, void 0, function* () {
75
+ // Set target to comma-separated list of file paths
76
+ target.target = request.inputs.map(input => typeof input === 'string' ? input : input.sourcePath).join(',');
73
77
  let parser = parser_1.Parsers.createParser("javascript", {
74
78
  ctx: new execution_1.ExecutionContext(),
75
79
  relativeTo: request.relativeTo
@@ -88,7 +92,7 @@ class Parse {
88
92
  result.push(id);
89
93
  }
90
94
  return result;
91
- }));
95
+ })));
92
96
  }
93
97
  }
94
98
  exports.Parse = Parse;
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/rpc/request/parse.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,+CAAiD;AAEjD,yCAAkD;AAClD,qCAAoC;AACpC,iCAA8B;AAG9B,MAAa,KAAK;IACd,YAA6B,MAAqB,EACrB,UAAmB;QADnB,WAAM,GAAN,MAAM,CAAe;QACrB,eAAU,GAAV,UAAU,CAAS;IAChD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAAiC,EACjC,YAAyD;QACnE,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAuB,OAAO,CAAC,EAAE,CAAO,OAAO,EAAE,EAAE;YACvF,IAAI,MAAM,GAAG,gBAAO,CAAC,YAAY,CAAC,YAAY,EAAE;gBAC5C,GAAG,EAAE,IAAI,4BAAgB,EAAE;gBAC3B,UAAU,EAAE,OAAO,CAAC,UAAU;aACjC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACd,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,MAAM,GAAa,EAAE,CAAC;YAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,EAAE,GAAG,IAAA,eAAQ,GAAE,CAAC;gBACtB,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,CAAO,EAAU,EAAE,EAAE;oBACtC,IAAI,UAAU,GAAe,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;oBAC5D,OAAO,IAAA,eAAO,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,GAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC;gBAC5D,CAAC,CAAA,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AA/BD,sBA+BC"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/rpc/request/parse.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAC3C,+CAAiD;AACjD,yCAAkD;AAClD,qCAA0C;AAC1C,iCAA8B;AAE9B,uCAAsC;AAEtC,MAAa,KAAK;IACd,YAA6B,MAAqB,EACrB,UAAmB;QADnB,WAAM,GAAN,MAAM,CAAe;QACrB,eAAU,GAAV,UAAU,CAAS;IAChD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAAiC,EACjC,YAAyD,EACzD,UAAmB;QAC7B,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QAC9B,UAAU,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,WAAW,CAAuB,OAAO,CAAC,EAAE,IAAA,qBAAW,EAAgB,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAO,OAAO,EAAE,EAAE;YAC/I,mDAAmD;YACnD,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CACvC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CACvD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,IAAI,MAAM,GAAG,gBAAO,CAAC,YAAY,CAAC,YAAY,EAAE;gBAC5C,GAAG,EAAE,IAAI,4BAAgB,EAAE;gBAC3B,UAAU,EAAE,OAAO,CAAC,UAAU;aACjC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACd,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,MAAM,GAAW,EAAE,CAAC;YAE1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,EAAE,GAAG,IAAA,eAAQ,GAAE,CAAC;gBACtB,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,CAAO,EAAU,EAAE,EAAE;oBACtC,IAAI,UAAU,GAAe,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;oBAC5D,OAAO,IAAA,eAAO,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,GAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC;gBAC5D,CAAC,CAAA,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC,CAAA,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AArCD,sBAqCC"}
@@ -4,7 +4,7 @@ export declare class PrepareRecipe {
4
4
  private readonly id;
5
5
  private readonly options?;
6
6
  constructor(id: string, options?: any | undefined);
7
- static handle(connection: MessageConnection, registry: RecipeRegistry, preparedRecipes: Map<String, Recipe>): void;
7
+ static handle(connection: MessageConnection, registry: RecipeRegistry, preparedRecipes: Map<String, Recipe>, metricsCsv?: string): void;
8
8
  /**
9
9
  * For preconditions that can be evaluated on the remote peer, let the remote peer
10
10
  * evaluate them and know that we will only have to do the visit work if the
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-recipe.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/prepare-recipe.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAiB,MAAM,cAAc,CAAC;AAOtF,qBAAa,aAAa;IACV,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAU,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAArC,EAAE,EAAE,MAAM,EAAmB,OAAO,CAAC,EAAE,GAAG,YAAA;IAGvE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,cAAc,EACxB,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IA6BlD;;;;OAIG;mBACkB,qBAAqB;IAuC1C,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAyBzC;AAED,MAAM,WAAW,qBAAqB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,gBAAgB,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,YAAY,EAAE,CAAA;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,YAAY,EAAE,CAAA;CACpC;AAED,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,EAAE,CAAA;CACtB"}
1
+ {"version":3,"file":"prepare-recipe.d.ts","sourceRoot":"","sources":["../../../src/rpc/request/prepare-recipe.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAC,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAiB,MAAM,cAAc,CAAC;AAQtF,qBAAa,aAAa;IACV,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAU,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAArC,EAAE,EAAE,MAAM,EAAmB,OAAO,CAAC,EAAE,GAAG,YAAA;IAGvE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,cAAc,EACxB,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,UAAU,CAAC,EAAE,MAAM;IA+BjC;;;;OAIG;mBACkB,qBAAqB;IAuC1C,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAyBzC;AAED,MAAM,WAAW,qBAAqB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,gBAAgB,CAAA;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,YAAY,EAAE,CAAA;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,YAAY,EAAE,CAAA;CACpC;AAED,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,EAAE,CAAA;CACtB"}