@matter/tools 0.12.4-alpha.0-20250215-5af08a8d6 → 0.12.4-alpha.0-20250223-1e0341a1a

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 (78) hide show
  1. package/dist/cjs/ansi-text/std.js +3 -3
  2. package/dist/cjs/ansi-text/std.js.map +1 -1
  3. package/dist/cjs/building/builder.js +2 -2
  4. package/dist/cjs/building/builder.js.map +1 -1
  5. package/dist/cjs/building/cycles.js +5 -5
  6. package/dist/cjs/building/cycles.js.map +1 -1
  7. package/dist/cjs/building/docs.js +2 -2
  8. package/dist/cjs/building/docs.js.map +1 -1
  9. package/dist/cjs/building/project-builder.js +2 -2
  10. package/dist/cjs/building/project-builder.js.map +1 -1
  11. package/dist/cjs/building/project.d.ts +1 -1
  12. package/dist/cjs/building/project.d.ts.map +1 -1
  13. package/dist/cjs/building/project.js +7 -7
  14. package/dist/cjs/building/project.js.map +1 -1
  15. package/dist/cjs/building/tsconfig.js +3 -3
  16. package/dist/cjs/building/tsconfig.js.map +1 -1
  17. package/dist/cjs/building/typescript/context.js +2 -2
  18. package/dist/cjs/building/typescript/context.js.map +1 -1
  19. package/dist/cjs/building/typescript/incremental-compiler.js +2 -2
  20. package/dist/cjs/building/typescript/incremental-compiler.js.map +1 -1
  21. package/dist/cjs/building/typescript/solution-builder.js +4 -4
  22. package/dist/cjs/building/typescript/solution-builder.js.map +1 -1
  23. package/dist/cjs/running/cli.js +6 -6
  24. package/dist/cjs/running/cli.js.map +1 -1
  25. package/dist/cjs/running/ensure-compiled.js +4 -4
  26. package/dist/cjs/running/ensure-compiled.js.map +1 -1
  27. package/dist/cjs/running/execute.js +4 -4
  28. package/dist/cjs/running/execute.js.map +1 -1
  29. package/dist/cjs/util/commander.js +3 -3
  30. package/dist/cjs/util/commander.js.map +1 -1
  31. package/dist/cjs/util/file.js +8 -8
  32. package/dist/cjs/util/file.js.map +1 -1
  33. package/dist/cjs/util/package.js +22 -22
  34. package/dist/cjs/util/package.js.map +1 -1
  35. package/dist/cjs/util/progress.js +4 -4
  36. package/dist/cjs/util/progress.js.map +1 -1
  37. package/dist/cjs/versioning/versioner.js +4 -4
  38. package/dist/cjs/versioning/versioner.js.map +1 -1
  39. package/dist/esm/ansi-text/std.js +2 -2
  40. package/dist/esm/building/builder.js +2 -2
  41. package/dist/esm/building/cycles.js +3 -3
  42. package/dist/esm/building/docs.js +2 -2
  43. package/dist/esm/building/project-builder.js +2 -2
  44. package/dist/esm/building/project.d.ts +1 -1
  45. package/dist/esm/building/project.d.ts.map +1 -1
  46. package/dist/esm/building/project.js +4 -4
  47. package/dist/esm/building/project.js.map +1 -1
  48. package/dist/esm/building/tsconfig.js +2 -2
  49. package/dist/esm/building/typescript/context.js +2 -2
  50. package/dist/esm/building/typescript/incremental-compiler.js +2 -2
  51. package/dist/esm/building/typescript/solution-builder.js +3 -3
  52. package/dist/esm/running/cli.js +3 -3
  53. package/dist/esm/running/ensure-compiled.js +3 -3
  54. package/dist/esm/running/execute.js +3 -3
  55. package/dist/esm/util/commander.js +2 -2
  56. package/dist/esm/util/file.js +3 -3
  57. package/dist/esm/util/package.js +4 -4
  58. package/dist/esm/util/progress.js +2 -2
  59. package/dist/esm/versioning/versioner.js +3 -3
  60. package/package.json +2 -2
  61. package/src/ansi-text/std.ts +1 -1
  62. package/src/building/builder.ts +1 -1
  63. package/src/building/cycles.ts +2 -2
  64. package/src/building/docs.ts +1 -1
  65. package/src/building/project-builder.ts +1 -1
  66. package/src/building/project.ts +4 -4
  67. package/src/building/tsconfig.ts +1 -1
  68. package/src/building/typescript/context.ts +1 -1
  69. package/src/building/typescript/incremental-compiler.ts +1 -1
  70. package/src/building/typescript/solution-builder.ts +2 -2
  71. package/src/running/cli.ts +2 -2
  72. package/src/running/ensure-compiled.ts +2 -2
  73. package/src/running/execute.ts +2 -2
  74. package/src/util/commander.ts +1 -1
  75. package/src/util/file.ts +2 -2
  76. package/src/util/package.ts +3 -3
  77. package/src/util/progress.ts +1 -1
  78. package/src/versioning/versioner.ts +2 -2
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { relative } from "path";
6
+ import { relative } from "node:path";
7
7
  import {
8
8
  Application,
9
9
  ContainerReflection,
@@ -234,4 +234,4 @@ export {
234
234
  buildDocs,
235
235
  mergeDocs
236
236
  };
237
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL2RvY3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgcmVsYXRpdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgICBBcHBsaWNhdGlvbixcbiAgICBDb250YWluZXJSZWZsZWN0aW9uLFxuICAgIENvbnZlcnRlcixcbiAgICBEZWNsYXJhdGlvblJlZmxlY3Rpb24sXG4gICAgTG9nTGV2ZWwsXG4gICAgUmVmbGVjdGlvbixcbiAgICBSZWZsZWN0aW9uRmxhZyxcbiAgICBSZWZsZWN0aW9uS2luZCxcbiAgICBUeXBlRG9jT3B0aW9ucyxcbn0gZnJvbSBcInR5cGVkb2NcIjtcbmltcG9ydCB7IGlzRmlsZSB9IGZyb20gXCIuLi91dGlsL2ZpbGUuanNcIjtcbmltcG9ydCB7IFBhY2thZ2UgfSBmcm9tIFwiLi4vdXRpbC9wYWNrYWdlLmpzXCI7XG5pbXBvcnQgeyBQcm9ncmVzcyB9IGZyb20gXCIuLi91dGlsL3Byb2dyZXNzLmpzXCI7XG5pbXBvcnQgeyBHcmFwaCB9IGZyb20gXCIuL2dyYXBoLmpzXCI7XG5cbi8vIE5PVEUgLSB0aGlzIGlzIGEgXCJiZXN0IGF0dGVtcHRcIiBhdCBkb2MgZ2VuZXJhdGlvbiB2aWEgdHlwZXNjcmlwdC4gIFRoZSByZXN1bHQgaXMgbm90IGFsbCB0aGF0IGdyZWF0OyB0eXBlZG9jIGlzIHRvb1xuLy8gbGltaXRlZCBmb3Igb3VyIGNvbXBsZXggQVBJIHNvIHdlJ3JlIGdvaW5nIHRvIG5lZWQgc29tZXRoaW5nIGN1c3RvbSB0byBkbyBpdCByaWdodFxuXG5jb25zdCBQTFVHSU5TID0gW1widHlwZWRvYy1naXRodWItdGhlbWVcIl0gYXMgc3RyaW5nW107XG5cbi8vIERvdWJsZSBcImRvY3NcIiBkaXJlY3RvcmllcyBzbyB0b3AtbGV2ZWwgZGlyZWN0b3J5IGNhbiBiZSBhIEdIIHJlcG9zaXRvcnkgd2l0aCBwYWdlcyBjb25maWd1cmVkIHVuZGVyIFwiZG9jc1wiXG5jb25zdCBPVVRQVVRfUEFUSCA9IFwiYnVpbGQvZG9jcy9kb2NzXCI7XG5cbmNvbnN0IFRIRU1FX09QVElPTlMgPSB7XG4gICAgdGhlbWVDb2xvcjogXCIjY2I5ODIwXCIsXG5cbiAgICAvLyBUT0RPIC0gYWRkIHNlcnZpY2UgbGlua3NcbiAgICAvLyAgIEdpdEh1YjogXCJodHRwczovL2dpdGh1Yi5jb20vcHJvamVjdC1jaGlwL21hdHRlci5qc1wiLFxuICAgIC8vICAgRGlzY29yZDogXCJodHRwczovL2Rpc2NvcmQuZ2cvdWptUk5yaER1V1wiLFxuICAgIC8vICAgTlBNOiBcImh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL0Bwcm9qZWN0LWNoaXAvbWF0dGVyLmpzXCIsXG59O1xuXG4vKipcbiAqIEdlbmVyYXRlIGJ1aWxkL2RvY3MuanNvbiBmb3IgYSBzaW5nbGUgcHJvamVjdC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkRG9jcyhwa2c6IFBhY2thZ2UsIHByb2dyZXNzOiBQcm9ncmVzcykge1xuICAgIGNvbnN0IG1vZHVsZXMgPSBwa2cuc291cmNlTW9kdWxlcztcblxuICAgIC8vIFdlIHBvaW50IHR5cGVkb2MgYXQgZWFjaCBvZiBvdXIgcHVibGljIGV4cG9ydHNcbiAgICBjb25zdCBlbnRyeVBvaW50cyA9IEFycmF5PHN0cmluZz4oKTtcblxuICAgIC8vIEluIGEgd29ya3NwYWNlIHR5cGVkb2MgcmVxdWlyZXMgZmlsZXMgdG8gYmUgcmVsYXRpdmUgdG8gdGhlIHdvcmtzcGFjZSBmb3IgbWVyZ2VcbiAgICBjb25zdCBiYXNlUGF0aCA9IHBrZy5yb290LnBhdGg7XG5cbiAgICBmb3IgKGNvbnN0IG5hbWUgaW4gbW9kdWxlcykge1xuICAgICAgICBjb25zdCBwYXRoID0gbW9kdWxlc1tuYW1lXTtcbiAgICAgICAgaWYgKHBhdGguZW5kc1dpdGgoXCIuanNvblwiKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNGaWxlKHBhdGgpKSB7XG4gICAgICAgICAgICBpZiAoIWVudHJ5UG9pbnRzLmluY2x1ZGVzKHBhdGgpKSB7XG4gICAgICAgICAgICAgICAgZW50cnlQb2ludHMucHVzaChwYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gc291cmNlIGZvdW5kIGZvciBtb2R1bGUgJHtuYW1lfSBwYXRoICR7bW9kdWxlc1tuYW1lXX1gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGFwcCA9IGF3YWl0IGNyZWF0ZUFwcGxpY2F0aW9uKHtcbiAgICAgICAgZXhjbHVkZUV4dGVybmFsczogdHJ1ZSxcbiAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgIHRzY29uZmlnOiBwa2cucmVzb2x2ZShcInRzY29uZmlnLmpzb25cIiksXG4gICAgICAgIGJhc2VQYXRoLFxuICAgICAgICBza2lwRXJyb3JDaGVja2luZzogdHJ1ZSxcblxuICAgICAgICAvLyBSZW1vdmVzIGEgY291cGxlIGh1bmRyZWQgTUIgb2YgdGFicyBzbyB3b3J0aCB1bmNvbW1lbnRpbmcgYXQgc29tZSBwb2ludFxuICAgICAgICAvL3ByZXR0eTogZmFsc2UsXG5cbiAgICAgICAgcmVhZG1lOiBcIm5vbmVcIixcbiAgICB9KTtcblxuICAgIGluc3RydW1lbnRGb3JFbnRyeXBvaW50UmVwYWlyKGFwcCwgcGtnKTtcblxuICAgIGNvbnN0IGFuYWx5c2lzID0gbmV3IFJlZmxlY3Rpb25BbmFseXNpcygpO1xuXG4gICAgYXBwLmNvbnZlcnRlci5vbihDb252ZXJ0ZXIuRVZFTlRfQ1JFQVRFX0RFQ0xBUkFUSU9OLCAoLypfY29udGV4dCwgcmVmbGVjdGlvbjogRGVjbGFyYXRpb25SZWZsZWN0aW9uKi8pID0+IHtcbiAgICAgICAgcHJvZ3Jlc3MucmVmcmVzaCgpO1xuICAgIH0pO1xuXG4gICAgYXBwLmNvbnZlcnRlci5vbihDb252ZXJ0ZXIuRVZFTlRfUkVTT0xWRSwgKCkgPT4ge1xuICAgICAgICBwcm9ncmVzcy5yZWZyZXNoKCk7XG4gICAgfSk7XG5cbiAgICBjb25zdCByZWZsZWN0aW9uID0gYXdhaXQgbG9hZFJlZmxlY3Rpb25zKGFwcCwgcGtnKTtcblxuICAgIGFuYWx5emVSZWZsZWN0aW9ucyhyZWZsZWN0aW9uLCBhbmFseXNpcyk7XG4gICAgcmVwYWlyUmVmbGVjdGlvbnMoYW5hbHlzaXMpO1xuXG4gICAgYXdhaXQgYXBwLmdlbmVyYXRlSnNvbihyZWZsZWN0aW9uLCBwa2cucmVzb2x2ZShcImJ1aWxkL2RvY3MuanNvblwiKSk7XG59XG5cbmZ1bmN0aW9uIHJlZmxlY3Rpb25zUGF0aChwa2c6IFBhY2thZ2UpIHtcbiAgICBjb25zdCBwYXRoID0gcGtnLnJlc29sdmUoXCJidWlsZC9kb2NzLmpzb25cIik7XG4gICAgaWYgKGlzRmlsZShwYXRoKSkge1xuICAgICAgICByZXR1cm4gcGF0aDtcbiAgICB9XG59XG5cbi8qKlxuICogVHlwZWRvYyBpcyBpbnN1ZmZpY2llbnRseSBjb25maWd1cmFibGUgdG8gY29ycmVjdGx5IG5hbWUgbW9kdWxlcy4gIFRoZSBvZmZpY2lhbCBkaXJlY3Rpb24gaXMgdG8gcmVuYW1lIG1vZHVsZXMgdXNpbmdcbiAqIHRoZSBcIm1vZHVsZVwiIGFubm90YXRpb24gYnV0IHNlZW1zIGR1bWIgdG8gaGF2ZSB0byBkbyB0aGF0IHdoZW4gd2UgY2FuIGNvbXB1dGUgdGhlIGNvcnJlY3QgbmFtZS4gIFdlJ2QgaGF2ZSB0byBlZGl0XG4gKiBhbmQgbWFpbnRhaW4gbWFueSBmaWxlcyBpbmNsdWRpbmcgY29kZWdlbi5cbiAqXG4gKiBJbnN0ZWFkIHdlIGNyZWF0ZSBhIG1hcCBvZiB0eXBlZG9jJ3MgbmFpdmUgbW9kdWxlIG5hbWUgdG8gdGhlIGNvcnJlY3QgbmFtZSBzbyB3ZSBjYW4gdXBkYXRlIG5hbWVzIGFzIHJlZmxlY3Rpb25zXG4gKiBsb2FkLlxuICovXG5mdW5jdGlvbiBpbnN0cnVtZW50Rm9yRW50cnlwb2ludFJlcGFpcihhcHA6IEFwcGxpY2F0aW9uLCBwa2c6IFBhY2thZ2UpIHtcbiAgICBjb25zdCBiYXNlR2V0RW50cnlQb2ludHMgPSBhcHAuZ2V0RW50cnlQb2ludHMuYmluZChhcHApO1xuICAgIGNvbnN0IG1hcHBpbmcgPSBuYWl2ZVRvUmVhbE5hbWVzRm9yKHBrZyk7XG4gICAgYXBwLmdldEVudHJ5UG9pbnRzID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBsaXN0ID0gYmFzZUdldEVudHJ5UG9pbnRzKCk7XG4gICAgICAgIGlmIChsaXN0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBsaXN0O1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBlcCBvZiBsaXN0KSB7XG4gICAgICAgICAgICBjb25zdCByZWFsTmFtZSA9IG1hcHBpbmdbZXAuZGlzcGxheU5hbWVdO1xuICAgICAgICAgICAgaWYgKHJlYWxOYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFR5cGVkb2MgbmFpdmUgbW9kdWxlIG5hbWUgXCIke2VwLmRpc3BsYXlOYW1lfVwiIGlzIHVubWFwcGVkYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlcC5kaXNwbGF5TmFtZSA9IHJlYWxOYW1lO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBsaXN0O1xuICAgIH07XG59XG5cbi8qKlxuICogQnVpbGQgdGhlIG1hcCBvZiB0eXBlZG9jJ3MgbmFpdmUgbmFtZSAtPiByZWFsIG5hbWUuXG4gKi9cbmZ1bmN0aW9uIG5haXZlVG9SZWFsTmFtZXNGb3IocGtnOiBQYWNrYWdlKSB7XG4gICAgY29uc3QgbW9kdWxlcyA9IHBrZy5zb3VyY2VNb2R1bGVzO1xuXG4gICAgLy8gTWFwIG9mIHN0dXBpZCBuYW1lcyB0aGF0IHR5cGVkb2MgY2hvb3NlcyB0byBhY3R1YWwgZXhwb3J0IG5hbWVzXG4gICAgY29uc3QgbWFwcGluZyA9IHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgICBjb25zdCBwYWNrYWdlUHJlZml4ID0gYCR7cGtnLm5hbWV9L2A7XG5cbiAgICAvLyBJbiBhIHdvcmtzcGFjZSB0eXBlZG9jIHJlcXVpcmVzIGZpbGVzIHRvIGJlIHJlbGF0aXZlIHRvIHRoZSB3b3Jrc3BhY2UgZm9yIG1lcmdlXG4gICAgY29uc3QgYmFzZVBhdGggPSBwa2cucm9vdC5wYXRoO1xuXG4gICAgZm9yIChjb25zdCBuYW1lIGluIG1vZHVsZXMpIHtcbiAgICAgICAgY29uc3QgcGF0aCA9IG1vZHVsZXNbbmFtZV07XG4gICAgICAgIGlmIChwYXRoLmVuZHNXaXRoKFwiLmpzb25cIikpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbmFpdmVOYW1lID0gcmVsYXRpdmUoYmFzZVBhdGgsIHBhdGgpXG4gICAgICAgICAgICAucmVwbGFjZSgvLig/OnRzfGpzfG1qc3xjanMpJC8sIFwiXCIpXG5cbiAgICAgICAgICAgIC8vIHR5cGVkb2Mgc3RyaXBzIFwiL2luZGV4XCI7IHRoaXMgaXMgaGFyZC1jb2RlZCBhbmQgZG9lc24ndCByZXNwZWN0IGV4cG9ydHNcbiAgICAgICAgICAgIC5yZXBsYWNlKC9cXC9pbmRleCQvLCBcIlwiKTtcblxuICAgICAgICBpZiAobmFtZS5zdGFydHNXaXRoKHBhY2thZ2VQcmVmaXgpKSB7XG4gICAgICAgICAgICBtYXBwaW5nW25haXZlTmFtZV0gPSBuYW1lLnN1YnN0cmluZyhwYWNrYWdlUHJlZml4Lmxlbmd0aCk7XG4gICAgICAgIH0gZWxzZSBpZiAobmFtZSA9PT0gcGtnLm5hbWUpIHtcbiAgICAgICAgICAgIC8vIEZsYWdzIGZvciBtZXJnZSB3aXRoIHBhcmVudFxuICAgICAgICAgICAgbWFwcGluZ1tuYWl2ZU5hbWVdID0gXCIuXCI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtYXBwaW5nW25haXZlTmFtZV0gPSBuYW1lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hcHBpbmc7XG59XG5cbi8qKlxuICogR2VuZXJhdGUgc3RhdGljIGRvY3VtZW50YXRpb24gd2Vic2l0ZS5cbiAqXG4gKiBTdXBwb3J0cyBpbmRpdmlkdWFsIHByb2plY3RzIG9yIHdvcmtzcGFjZXMgYnV0IG5vdCBpbmRpdmlkdWFsIHByb2plY3RzIHdpdGhpbiB3b3Jrc3BhY2VzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWVyZ2VEb2NzKHBrZzogUGFja2FnZSkge1xuICAgIGNvbnN0IGVudHJ5UG9pbnRzID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgY29uc3Qgcm9vdCA9IHBrZy5yb290O1xuXG4gICAgaWYgKHJvb3QuaXNXb3Jrc3BhY2UpIHtcbiAgICAgICAgLy8gV29ya3NwYWNlXG4gICAgICAgIGNvbnN0IGdyYXBoID0gYXdhaXQgR3JhcGgubG9hZChyb290KTtcbiAgICAgICAgaWYgKGdyYXBoID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIC8vIFNob3VsZG4ndCBoYXBwZW5cbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW50ZXJuYWw6ICR7cGtnLm5hbWV9IGhhcyB3b3Jrc3BhY2VzIGJ1dCBubyBncmFwaGApO1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBncmFwaC5ub2Rlcykge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IHJlZmxlY3Rpb25zUGF0aChub2RlLnBrZyk7XG4gICAgICAgICAgICBpZiAocGF0aCkge1xuICAgICAgICAgICAgICAgIGVudHJ5UG9pbnRzLnB1c2gocGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFlbnRyeVBvaW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gcmVmbGVjdGlvbnMgZGV0ZWN0ZWQgaW4gd29ya3NwYWNlICR7cGtnLm5hbWV9YCk7XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBTdGFuZGFsb25lIHBhY2thZ2VcbiAgICAgICAgY29uc3QgcGF0aCA9IHJlZmxlY3Rpb25zUGF0aChwa2cpO1xuICAgICAgICBpZiAocGF0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHJlZmxlY3Rpb25zIHByZXNlbnQgZm9yICR7cGtnLm5hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgZW50cnlQb2ludHMucHVzaChwYXRoKTtcbiAgICB9XG5cbiAgICBjb25zdCBhcHAgPSBhd2FpdCBjcmVhdGVBcHBsaWNhdGlvbih7XG4gICAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgICBlbnRyeVBvaW50U3RyYXRlZ3k6IFwibWVyZ2VcIixcbiAgICAgICAgLi4uVEhFTUVfT1BUSU9OUyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlZmxlY3Rpb24gPSBhd2FpdCBsb2FkUmVmbGVjdGlvbnMoYXBwLCBwa2cpO1xuXG4gICAgYXdhaXQgYXBwLmdlbmVyYXRlRG9jcyhyZWZsZWN0aW9uLCBwa2cucmVzb2x2ZShPVVRQVVRfUEFUSCkpO1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHR5cGVkb2MgXCJhcHBsaWNhdGlvblwiIHdoaWNoIGlzIHRoZSBpbnRlcmZhY2UgZm9yIGV4dHJhY3RpbmcgdHlwZXMgYW5kIGdlbmVyYXRpbmcgZG9jcy5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gY3JlYXRlQXBwbGljYXRpb24ob3B0aW9uczogUGFydGlhbDxUeXBlRG9jT3B0aW9ucz4pIHtcbiAgICByZXR1cm4gYXdhaXQgQXBwbGljYXRpb24uYm9vdHN0cmFwV2l0aFBsdWdpbnMoe1xuICAgICAgICBwbHVnaW46IFBMVUdJTlMsXG4gICAgICAgIGxvZ0xldmVsOiBMb2dMZXZlbC5XYXJuLFxuICAgICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xufVxuXG4vKipcbiAqIFBlcmZvcm0gXCJjb252ZXJzaW9uXCIgd2hpY2ggaXMgdHlwZWRvYyB0ZXJtaW5vbG9neSBmb3IgZXhlY3V0aW5nIHRoZSBvcGVyYXRpb24gZGVmaW5lZCBieSB0aGUgYXBwbGljYXRpb24uXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGxvYWRSZWZsZWN0aW9ucyhhcHA6IEFwcGxpY2F0aW9uLCBwa2c6IFBhY2thZ2UpIHtcbiAgICBjb25zdCByZWZsZWN0aW9uID0gYXdhaXQgYXBwLmNvbnZlcnQoKTtcbiAgICBpZiAocmVmbGVjdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgUHJvamVjdCAke3BrZy5wYXRofSBwcm9kdWNlZCBubyBkb2N1bWVudGF0aW9uYCk7XG4gICAgfVxuICAgIHJldHVybiByZWZsZWN0aW9uO1xufVxuXG5jbGFzcyBSZWZsZWN0aW9uQW5hbHlzaXMge1xuICAgIC8vIFRPRE8gLSBuZWVkIHRvIHBvcHVsYXRlIHRoaXMgZHVyaW5nIGFuYWx5c2lzIHNvIHdlIGNhbiB3YXJuOyB3aWxsIHJlcGxhY2UgdHlwZWRvYy1wbHVnaW4tbWlzc2luZy1leHBvcnRzXG4gICAgdW5leHBvcnRlZFJlZmVyZW5jZSA9IG5ldyBTZXQ8UmVmbGVjdGlvbj4oKTtcblxuICAgIG1lcmdlV2l0aFBhcmVudCA9IG5ldyBTZXQ8RGVjbGFyYXRpb25SZWZsZWN0aW9uPigpO1xuICAgIG1lcmdlSW50byA9IG5ldyBNYXA8RGVjbGFyYXRpb25SZWZsZWN0aW9uLCBEZWNsYXJhdGlvblJlZmxlY3Rpb24+KCk7XG59XG5cbi8qKlxuICogVHJhbnNmb3JtIHJlZmxlY3Rpb25zIHRvIGltcHJvdmUgZmluYWwgb3V0cHV0LlxuICovXG5mdW5jdGlvbiBhbmFseXplUmVmbGVjdGlvbnMobm9kZTogUmVmbGVjdGlvbiwgYW5hbHlzaXM6IFJlZmxlY3Rpb25BbmFseXNpcykge1xuICAgIHZpc2l0KG5vZGUsIHN1YmplY3QgPT4ge1xuICAgICAgICAvLyBUT0RPIC0gcG9wdWxhdGUgYW5hbHlzaXMudW5leHBvcmVkUmVmZXJlbmNlIChvciBwZXJoYXBzIGp1c3QgcHJpbnQgd2FybmluZylcblxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGNoaWxkcmVuT2Yoc3ViamVjdCk7XG4gICAgICAgIGNvbnN0IG1lcmdlYWJsZSA9IHt9IGFzIFJlY29yZDxzdHJpbmcsIERlY2xhcmF0aW9uUmVmbGVjdGlvbj47XG4gICAgICAgIGNvbnN0IG5hbWVzcGFjZXMgPSBuZXcgU2V0PERlY2xhcmF0aW9uUmVmbGVjdGlvbj4oKTtcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbikge1xuICAgICAgICAgICAgaWYgKGNoaWxkLmtpbmRPZihSZWZsZWN0aW9uS2luZC5DbGFzc09ySW50ZXJmYWNlIHwgUmVmbGVjdGlvbktpbmQuRnVuY3Rpb24pKSB7XG4gICAgICAgICAgICAgICAgbWVyZ2VhYmxlW2NoaWxkLm5hbWVdID0gY2hpbGQ7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkLmtpbmRPZihSZWZsZWN0aW9uS2luZC5OYW1lc3BhY2UpKSB7XG4gICAgICAgICAgICAgICAgbmFtZXNwYWNlcy5hZGQoY2hpbGQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBucyBvZiBuYW1lc3BhY2VzKSB7XG4gICAgICAgICAgICBjb25zdCBtZXJnZUludG8gPSBtZXJnZWFibGVbbnMubmFtZV07XG4gICAgICAgICAgICBpZiAobWVyZ2VJbnRvKSB7XG4gICAgICAgICAgICAgICAgYW5hbHlzaXMubWVyZ2VJbnRvLnNldChucywgbWVyZ2VJbnRvKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xufVxuXG5mdW5jdGlvbiByZXBhaXJSZWZsZWN0aW9ucyhhbmFseXNpczogUmVmbGVjdGlvbkFuYWx5c2lzKSB7XG4gICAgZm9yIChjb25zdCB0b01lcmdlIG9mIGFuYWx5c2lzLm1lcmdlV2l0aFBhcmVudCkge1xuICAgICAgICBpZiAodG9NZXJnZS5wYXJlbnQgaW5zdGFuY2VvZiBEZWNsYXJhdGlvblJlZmxlY3Rpb24pIHtcbiAgICAgICAgICAgIG1lcmdlSW50byh0b01lcmdlLCB0b01lcmdlLnBhcmVudCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9yIChjb25zdCBbdG9NZXJnZSwgaW50b10gb2YgYW5hbHlzaXMubWVyZ2VJbnRvLmVudHJpZXMoKSkge1xuICAgICAgICBtZXJnZUludG8odG9NZXJnZSwgaW50byk7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBtb3ZlTm9kZShzdWJqZWN0OiBEZWNsYXJhdGlvblJlZmxlY3Rpb24sIGludG86IENvbnRhaW5lclJlZmxlY3Rpb24pIHtcbiAgICBjb25zdCBmcm9tID0gc3ViamVjdC5wYXJlbnQgYXMgQ29udGFpbmVyUmVmbGVjdGlvbjtcblxuICAgIC8vIE5vIGFjdHVhbCBtb3ZlbWVudFxuICAgIGlmIChmcm9tID09PSBpbnRvKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZnJvbSBvbGQgcGFyZW50XG4gICAgaWYgKGZyb20pIHtcbiAgICAgICAgZnJvbS5yZW1vdmVDaGlsZChzdWJqZWN0KTtcbiAgICB9XG5cbiAgICAvLyBBZGQgdG8gbmV3IHBhcmVudFxuICAgIGludG8uYWRkQ2hpbGQoc3ViamVjdCk7XG4gICAgc3ViamVjdC5wYXJlbnQgPSBpbnRvO1xuXG4gICAgLy8gV2hlbiBtZXJnaW5nIGEgbmFtZXNwYWNlIGludG8gYSB0eXBlIHR3ZWFrIG1vZGlmaWVyIGFuZCBraW5kIGFwcHJvcHJpYXRlbHkgKGEgYml0IG9mIGd1ZXNzaW5nIGhlcmU7IG1pZ2h0IG5lZWRcbiAgICAvLyB0d2Vha2luZylcbiAgICBpZiAoXG4gICAgICAgIGZyb20ua2luZE9mKFJlZmxlY3Rpb25LaW5kLk5hbWVzcGFjZSkgJiZcbiAgICAgICAgaW50by5raW5kT2YoUmVmbGVjdGlvbktpbmQuQ2xhc3NPckludGVyZmFjZSkgJiZcbiAgICAgICAgc3ViamVjdC5raW5kT2YoUmVmbGVjdGlvbktpbmQuU29tZVZhbHVlKVxuICAgICkge1xuICAgICAgICBzdWJqZWN0LmZsYWdzLnNldEZsYWcoUmVmbGVjdGlvbkZsYWcuU3RhdGljLCB0cnVlKTtcbiAgICAgICAgaWYgKHN1YmplY3Qua2luZE9mKFJlZmxlY3Rpb25LaW5kLlZhcmlhYmxlKSkge1xuICAgICAgICAgICAgc3ViamVjdC5raW5kID0gUmVmbGVjdGlvbktpbmQuUHJvcGVydHk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1lcmdlSW50byhmcm9tOiBEZWNsYXJhdGlvblJlZmxlY3Rpb24sIGludG86IENvbnRhaW5lclJlZmxlY3Rpb24pIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IGNoaWxkcmVuT2YoZnJvbSk7XG4gICAgd2hpbGUgKGNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICBtb3ZlTm9kZShjaGlsZHJlblswXSwgaW50byk7XG4gICAgfVxuICAgIChmcm9tLnBhcmVudCBhcyBDb250YWluZXJSZWZsZWN0aW9uKT8ucmVtb3ZlQ2hpbGQoZnJvbSk7XG4gICAgLy8gVE9ETyAtIHJlbWFwIG5hbWVcbn1cblxuZnVuY3Rpb24gY2hpbGRyZW5PZihub2RlOiBSZWZsZWN0aW9uKSB7XG4gICAgaWYgKG5vZGUgaW5zdGFuY2VvZiBDb250YWluZXJSZWZsZWN0aW9uKSB7XG4gICAgICAgIGlmIChub2RlLmNoaWxkcmVuID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIG5vZGUuY2hpbGRyZW4gPSBbXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbm9kZS5jaGlsZHJlbjtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xufVxuXG4vKipcbiAqIFZpc2l0IGFsbCBub2RlcyBpbiBhIHJlZmxlY3Rpb24gdHJlZS4gIFJlZmxlY3Rpb24gaGFzIGEgXCJ2aXNpdFwiIG1ldGhvZCBidXQgaXQncyBqdXN0IGEgYnJhbmNoIG9uIHR5cGUuXG4gKi9cbmZ1bmN0aW9uIHZpc2l0KG5vZGU6IFJlZmxlY3Rpb24sIHZpc2l0b3I6IChub2RlOiBSZWZsZWN0aW9uKSA9PiB2b2lkKSB7XG4gICAgdmlzaXRvcihub2RlKTtcblxuICAgIGZvciAoY29uc3QgY2hpbGQgb2YgY2hpbGRyZW5PZihub2RlKSkge1xuICAgICAgICB2aXNpdChjaGlsZCwgdmlzaXRvcik7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsZ0JBQWdCO0FBQ3pCO0FBQUEsRUFDSTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUVBO0FBQUEsRUFDQTtBQUFBLE9BRUc7QUFDUCxTQUFTLGNBQWM7QUFHdkIsU0FBUyxhQUFhO0FBS3RCLE1BQU0sVUFBVSxDQUFDLHNCQUFzQjtBQUd2QyxNQUFNLGNBQWM7QUFFcEIsTUFBTSxnQkFBZ0I7QUFBQSxFQUNsQixZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNaEI7QUFLQSxlQUFzQixVQUFVLEtBQWMsVUFBb0I7QUFDOUQsUUFBTSxVQUFVLElBQUk7QUFHcEIsUUFBTSxjQUFjLE1BQWM7QUFHbEMsUUFBTSxXQUFXLElBQUksS0FBSztBQUUxQixhQUFXLFFBQVEsU0FBUztBQUN4QixVQUFNLE9BQU8sUUFBUSxJQUFJO0FBQ3pCLFFBQUksS0FBSyxTQUFTLE9BQU8sR0FBRztBQUN4QjtBQUFBLElBQ0o7QUFFQSxRQUFJLE9BQU8sSUFBSSxHQUFHO0FBQ2QsVUFBSSxDQUFDLFlBQVksU0FBUyxJQUFJLEdBQUc7QUFDN0Isb0JBQVksS0FBSyxJQUFJO0FBQUEsTUFDekI7QUFBQSxJQUNKLE9BQU87QUFDSCxZQUFNLElBQUksTUFBTSw4QkFBOEIsSUFBSSxTQUFTLFFBQVEsSUFBSSxDQUFDLEVBQUU7QUFBQSxJQUM5RTtBQUFBLEVBQ0o7QUFFQSxRQUFNLE1BQU0sTUFBTSxrQkFBa0I7QUFBQSxJQUNoQyxrQkFBa0I7QUFBQSxJQUNs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
237
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL2RvY3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgcmVsYXRpdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQge1xuICAgIEFwcGxpY2F0aW9uLFxuICAgIENvbnRhaW5lclJlZmxlY3Rpb24sXG4gICAgQ29udmVydGVyLFxuICAgIERlY2xhcmF0aW9uUmVmbGVjdGlvbixcbiAgICBMb2dMZXZlbCxcbiAgICBSZWZsZWN0aW9uLFxuICAgIFJlZmxlY3Rpb25GbGFnLFxuICAgIFJlZmxlY3Rpb25LaW5kLFxuICAgIFR5cGVEb2NPcHRpb25zLFxufSBmcm9tIFwidHlwZWRvY1wiO1xuaW1wb3J0IHsgaXNGaWxlIH0gZnJvbSBcIi4uL3V0aWwvZmlsZS5qc1wiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4uL3V0aWwvcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IEdyYXBoIH0gZnJvbSBcIi4vZ3JhcGguanNcIjtcblxuLy8gTk9URSAtIHRoaXMgaXMgYSBcImJlc3QgYXR0ZW1wdFwiIGF0IGRvYyBnZW5lcmF0aW9uIHZpYSB0eXBlc2NyaXB0LiAgVGhlIHJlc3VsdCBpcyBub3QgYWxsIHRoYXQgZ3JlYXQ7IHR5cGVkb2MgaXMgdG9vXG4vLyBsaW1pdGVkIGZvciBvdXIgY29tcGxleCBBUEkgc28gd2UncmUgZ29pbmcgdG8gbmVlZCBzb21ldGhpbmcgY3VzdG9tIHRvIGRvIGl0IHJpZ2h0XG5cbmNvbnN0IFBMVUdJTlMgPSBbXCJ0eXBlZG9jLWdpdGh1Yi10aGVtZVwiXSBhcyBzdHJpbmdbXTtcblxuLy8gRG91YmxlIFwiZG9jc1wiIGRpcmVjdG9yaWVzIHNvIHRvcC1sZXZlbCBkaXJlY3RvcnkgY2FuIGJlIGEgR0ggcmVwb3NpdG9yeSB3aXRoIHBhZ2VzIGNvbmZpZ3VyZWQgdW5kZXIgXCJkb2NzXCJcbmNvbnN0IE9VVFBVVF9QQVRIID0gXCJidWlsZC9kb2NzL2RvY3NcIjtcblxuY29uc3QgVEhFTUVfT1BUSU9OUyA9IHtcbiAgICB0aGVtZUNvbG9yOiBcIiNjYjk4MjBcIixcblxuICAgIC8vIFRPRE8gLSBhZGQgc2VydmljZSBsaW5rc1xuICAgIC8vICAgR2l0SHViOiBcImh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZWN0LWNoaXAvbWF0dGVyLmpzXCIsXG4gICAgLy8gICBEaXNjb3JkOiBcImh0dHBzOi8vZGlzY29yZC5nZy91am1STnJoRHVXXCIsXG4gICAgLy8gICBOUE06IFwiaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvQHByb2plY3QtY2hpcC9tYXR0ZXIuanNcIixcbn07XG5cbi8qKlxuICogR2VuZXJhdGUgYnVpbGQvZG9jcy5qc29uIGZvciBhIHNpbmdsZSBwcm9qZWN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGREb2NzKHBrZzogUGFja2FnZSwgcHJvZ3Jlc3M6IFByb2dyZXNzKSB7XG4gICAgY29uc3QgbW9kdWxlcyA9IHBrZy5zb3VyY2VNb2R1bGVzO1xuXG4gICAgLy8gV2UgcG9pbnQgdHlwZWRvYyBhdCBlYWNoIG9mIG91ciBwdWJsaWMgZXhwb3J0c1xuICAgIGNvbnN0IGVudHJ5UG9pbnRzID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgLy8gSW4gYSB3b3Jrc3BhY2UgdHlwZWRvYyByZXF1aXJlcyBmaWxlcyB0byBiZSByZWxhdGl2ZSB0byB0aGUgd29ya3NwYWNlIGZvciBtZXJnZVxuICAgIGNvbnN0IGJhc2VQYXRoID0gcGtnLnJvb3QucGF0aDtcblxuICAgIGZvciAoY29uc3QgbmFtZSBpbiBtb2R1bGVzKSB7XG4gICAgICAgIGNvbnN0IHBhdGggPSBtb2R1bGVzW25hbWVdO1xuICAgICAgICBpZiAocGF0aC5lbmRzV2l0aChcIi5qc29uXCIpKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc0ZpbGUocGF0aCkpIHtcbiAgICAgICAgICAgIGlmICghZW50cnlQb2ludHMuaW5jbHVkZXMocGF0aCkpIHtcbiAgICAgICAgICAgICAgICBlbnRyeVBvaW50cy5wdXNoKHBhdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBzb3VyY2UgZm91bmQgZm9yIG1vZHVsZSAke25hbWV9IHBhdGggJHttb2R1bGVzW25hbWVdfWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgYXBwID0gYXdhaXQgY3JlYXRlQXBwbGljYXRpb24oe1xuICAgICAgICBleGNsdWRlRXh0ZXJuYWxzOiB0cnVlLFxuICAgICAgICBlbnRyeVBvaW50cyxcbiAgICAgICAgdHNjb25maWc6IHBrZy5yZXNvbHZlKFwidHNjb25maWcuanNvblwiKSxcbiAgICAgICAgYmFzZVBhdGgsXG4gICAgICAgIHNraXBFcnJvckNoZWNraW5nOiB0cnVlLFxuXG4gICAgICAgIC8vIFJlbW92ZXMgYSBjb3VwbGUgaHVuZHJlZCBNQiBvZiB0YWJzIHNvIHdvcnRoIHVuY29tbWVudGluZyBhdCBzb21lIHBvaW50XG4gICAgICAgIC8vcHJldHR5OiBmYWxzZSxcblxuICAgICAgICByZWFkbWU6IFwibm9uZVwiLFxuICAgIH0pO1xuXG4gICAgaW5zdHJ1bWVudEZvckVudHJ5cG9pbnRSZXBhaXIoYXBwLCBwa2cpO1xuXG4gICAgY29uc3QgYW5hbHlzaXMgPSBuZXcgUmVmbGVjdGlvbkFuYWx5c2lzKCk7XG5cbiAgICBhcHAuY29udmVydGVyLm9uKENvbnZlcnRlci5FVkVOVF9DUkVBVEVfREVDTEFSQVRJT04sICgvKl9jb250ZXh0LCByZWZsZWN0aW9uOiBEZWNsYXJhdGlvblJlZmxlY3Rpb24qLykgPT4ge1xuICAgICAgICBwcm9ncmVzcy5yZWZyZXNoKCk7XG4gICAgfSk7XG5cbiAgICBhcHAuY29udmVydGVyLm9uKENvbnZlcnRlci5FVkVOVF9SRVNPTFZFLCAoKSA9PiB7XG4gICAgICAgIHByb2dyZXNzLnJlZnJlc2goKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlZmxlY3Rpb24gPSBhd2FpdCBsb2FkUmVmbGVjdGlvbnMoYXBwLCBwa2cpO1xuXG4gICAgYW5hbHl6ZVJlZmxlY3Rpb25zKHJlZmxlY3Rpb24sIGFuYWx5c2lzKTtcbiAgICByZXBhaXJSZWZsZWN0aW9ucyhhbmFseXNpcyk7XG5cbiAgICBhd2FpdCBhcHAuZ2VuZXJhdGVKc29uKHJlZmxlY3Rpb24sIHBrZy5yZXNvbHZlKFwiYnVpbGQvZG9jcy5qc29uXCIpKTtcbn1cblxuZnVuY3Rpb24gcmVmbGVjdGlvbnNQYXRoKHBrZzogUGFja2FnZSkge1xuICAgIGNvbnN0IHBhdGggPSBwa2cucmVzb2x2ZShcImJ1aWxkL2RvY3MuanNvblwiKTtcbiAgICBpZiAoaXNGaWxlKHBhdGgpKSB7XG4gICAgICAgIHJldHVybiBwYXRoO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUeXBlZG9jIGlzIGluc3VmZmljaWVudGx5IGNvbmZpZ3VyYWJsZSB0byBjb3JyZWN0bHkgbmFtZSBtb2R1bGVzLiAgVGhlIG9mZmljaWFsIGRpcmVjdGlvbiBpcyB0byByZW5hbWUgbW9kdWxlcyB1c2luZ1xuICogdGhlIFwibW9kdWxlXCIgYW5ub3RhdGlvbiBidXQgc2VlbXMgZHVtYiB0byBoYXZlIHRvIGRvIHRoYXQgd2hlbiB3ZSBjYW4gY29tcHV0ZSB0aGUgY29ycmVjdCBuYW1lLiAgV2UnZCBoYXZlIHRvIGVkaXRcbiAqIGFuZCBtYWludGFpbiBtYW55IGZpbGVzIGluY2x1ZGluZyBjb2RlZ2VuLlxuICpcbiAqIEluc3RlYWQgd2UgY3JlYXRlIGEgbWFwIG9mIHR5cGVkb2MncyBuYWl2ZSBtb2R1bGUgbmFtZSB0byB0aGUgY29ycmVjdCBuYW1lIHNvIHdlIGNhbiB1cGRhdGUgbmFtZXMgYXMgcmVmbGVjdGlvbnNcbiAqIGxvYWQuXG4gKi9cbmZ1bmN0aW9uIGluc3RydW1lbnRGb3JFbnRyeXBvaW50UmVwYWlyKGFwcDogQXBwbGljYXRpb24sIHBrZzogUGFja2FnZSkge1xuICAgIGNvbnN0IGJhc2VHZXRFbnRyeVBvaW50cyA9IGFwcC5nZXRFbnRyeVBvaW50cy5iaW5kKGFwcCk7XG4gICAgY29uc3QgbWFwcGluZyA9IG5haXZlVG9SZWFsTmFtZXNGb3IocGtnKTtcbiAgICBhcHAuZ2V0RW50cnlQb2ludHMgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGxpc3QgPSBiYXNlR2V0RW50cnlQb2ludHMoKTtcbiAgICAgICAgaWYgKGxpc3QgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIGxpc3Q7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGVwIG9mIGxpc3QpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlYWxOYW1lID0gbWFwcGluZ1tlcC5kaXNwbGF5TmFtZV07XG4gICAgICAgICAgICBpZiAocmVhbE5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVHlwZWRvYyBuYWl2ZSBtb2R1bGUgbmFtZSBcIiR7ZXAuZGlzcGxheU5hbWV9XCIgaXMgdW5tYXBwZWRgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVwLmRpc3BsYXlOYW1lID0gcmVhbE5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGxpc3Q7XG4gICAgfTtcbn1cblxuLyoqXG4gKiBCdWlsZCB0aGUgbWFwIG9mIHR5cGVkb2MncyBuYWl2ZSBuYW1lIC0+IHJlYWwgbmFtZS5cbiAqL1xuZnVuY3Rpb24gbmFpdmVUb1JlYWxOYW1lc0Zvcihwa2c6IFBhY2thZ2UpIHtcbiAgICBjb25zdCBtb2R1bGVzID0gcGtnLnNvdXJjZU1vZHVsZXM7XG5cbiAgICAvLyBNYXAgb2Ygc3R1cGlkIG5hbWVzIHRoYXQgdHlwZWRvYyBjaG9vc2VzIHRvIGFjdHVhbCBleHBvcnQgbmFtZXNcbiAgICBjb25zdCBtYXBwaW5nID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAgIGNvbnN0IHBhY2thZ2VQcmVmaXggPSBgJHtwa2cubmFtZX0vYDtcblxuICAgIC8vIEluIGEgd29ya3NwYWNlIHR5cGVkb2MgcmVxdWlyZXMgZmlsZXMgdG8gYmUgcmVsYXRpdmUgdG8gdGhlIHdvcmtzcGFjZSBmb3IgbWVyZ2VcbiAgICBjb25zdCBiYXNlUGF0aCA9IHBrZy5yb290LnBhdGg7XG5cbiAgICBmb3IgKGNvbnN0IG5hbWUgaW4gbW9kdWxlcykge1xuICAgICAgICBjb25zdCBwYXRoID0gbW9kdWxlc1tuYW1lXTtcbiAgICAgICAgaWYgKHBhdGguZW5kc1dpdGgoXCIuanNvblwiKSkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuYWl2ZU5hbWUgPSByZWxhdGl2ZShiYXNlUGF0aCwgcGF0aClcbiAgICAgICAgICAgIC5yZXBsYWNlKC8uKD86dHN8anN8bWpzfGNqcykkLywgXCJcIilcblxuICAgICAgICAgICAgLy8gdHlwZWRvYyBzdHJpcHMgXCIvaW5kZXhcIjsgdGhpcyBpcyBoYXJkLWNvZGVkIGFuZCBkb2Vzbid0IHJlc3BlY3QgZXhwb3J0c1xuICAgICAgICAgICAgLnJlcGxhY2UoL1xcL2luZGV4JC8sIFwiXCIpO1xuXG4gICAgICAgIGlmIChuYW1lLnN0YXJ0c1dpdGgocGFja2FnZVByZWZpeCkpIHtcbiAgICAgICAgICAgIG1hcHBpbmdbbmFpdmVOYW1lXSA9IG5hbWUuc3Vic3RyaW5nKHBhY2thZ2VQcmVmaXgubGVuZ3RoKTtcbiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSBwa2cubmFtZSkge1xuICAgICAgICAgICAgLy8gRmxhZ3MgZm9yIG1lcmdlIHdpdGggcGFyZW50XG4gICAgICAgICAgICBtYXBwaW5nW25haXZlTmFtZV0gPSBcIi5cIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1hcHBpbmdbbmFpdmVOYW1lXSA9IG5hbWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWFwcGluZztcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZSBzdGF0aWMgZG9jdW1lbnRhdGlvbiB3ZWJzaXRlLlxuICpcbiAqIFN1cHBvcnRzIGluZGl2aWR1YWwgcHJvamVjdHMgb3Igd29ya3NwYWNlcyBidXQgbm90IGluZGl2aWR1YWwgcHJvamVjdHMgd2l0aGluIHdvcmtzcGFjZXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtZXJnZURvY3MocGtnOiBQYWNrYWdlKSB7XG4gICAgY29uc3QgZW50cnlQb2ludHMgPSBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICBjb25zdCByb290ID0gcGtnLnJvb3Q7XG5cbiAgICBpZiAocm9vdC5pc1dvcmtzcGFjZSkge1xuICAgICAgICAvLyBXb3Jrc3BhY2VcbiAgICAgICAgY29uc3QgZ3JhcGggPSBhd2FpdCBHcmFwaC5sb2FkKHJvb3QpO1xuICAgICAgICBpZiAoZ3JhcGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgLy8gU2hvdWxkbid0IGhhcHBlblxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnRlcm5hbDogJHtwa2cubmFtZX0gaGFzIHdvcmtzcGFjZXMgYnV0IG5vIGdyYXBoYCk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBub2RlIG9mIGdyYXBoLm5vZGVzKSB7XG4gICAgICAgICAgICBjb25zdCBwYXRoID0gcmVmbGVjdGlvbnNQYXRoKG5vZGUucGtnKTtcbiAgICAgICAgICAgIGlmIChwYXRoKSB7XG4gICAgICAgICAgICAgICAgZW50cnlQb2ludHMucHVzaChwYXRoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWVudHJ5UG9pbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyByZWZsZWN0aW9ucyBkZXRlY3RlZCBpbiB3b3Jrc3BhY2UgJHtwa2cubmFtZX1gKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIFN0YW5kYWxvbmUgcGFja2FnZVxuICAgICAgICBjb25zdCBwYXRoID0gcmVmbGVjdGlvbnNQYXRoKHBrZyk7XG4gICAgICAgIGlmIChwYXRoID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gcmVmbGVjdGlvbnMgcHJlc2VudCBmb3IgJHtwa2cubmFtZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBlbnRyeVBvaW50cy5wdXNoKHBhdGgpO1xuICAgIH1cblxuICAgIGNvbnN0IGFwcCA9IGF3YWl0IGNyZWF0ZUFwcGxpY2F0aW9uKHtcbiAgICAgICAgZW50cnlQb2ludHMsXG4gICAgICAgIGVudHJ5UG9pbnRTdHJhdGVneTogXCJtZXJnZVwiLFxuICAgICAgICAuLi5USEVNRV9PUFRJT05TLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcmVmbGVjdGlvbiA9IGF3YWl0IGxvYWRSZWZsZWN0aW9ucyhhcHAsIHBrZyk7XG5cbiAgICBhd2FpdCBhcHAuZ2VuZXJhdGVEb2NzKHJlZmxlY3Rpb24sIHBrZy5yZXNvbHZlKE9VVFBVVF9QQVRIKSk7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgdHlwZWRvYyBcImFwcGxpY2F0aW9uXCIgd2hpY2ggaXMgdGhlIGludGVyZmFjZSBmb3IgZXh0cmFjdGluZyB0eXBlcyBhbmQgZ2VuZXJhdGluZyBkb2NzLlxuICovXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVBcHBsaWNhdGlvbihvcHRpb25zOiBQYXJ0aWFsPFR5cGVEb2NPcHRpb25zPikge1xuICAgIHJldHVybiBhd2FpdCBBcHBsaWNhdGlvbi5ib290c3RyYXBXaXRoUGx1Z2lucyh7XG4gICAgICAgIHBsdWdpbjogUExVR0lOUyxcbiAgICAgICAgbG9nTGV2ZWw6IExvZ0xldmVsLldhcm4sXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgfSk7XG59XG5cbi8qKlxuICogUGVyZm9ybSBcImNvbnZlcnNpb25cIiB3aGljaCBpcyB0eXBlZG9jIHRlcm1pbm9sb2d5IGZvciBleGVjdXRpbmcgdGhlIG9wZXJhdGlvbiBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbi5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gbG9hZFJlZmxlY3Rpb25zKGFwcDogQXBwbGljYXRpb24sIHBrZzogUGFja2FnZSkge1xuICAgIGNvbnN0IHJlZmxlY3Rpb24gPSBhd2FpdCBhcHAuY29udmVydCgpO1xuICAgIGlmIChyZWZsZWN0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQcm9qZWN0ICR7cGtnLnBhdGh9IHByb2R1Y2VkIG5vIGRvY3VtZW50YXRpb25gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlZmxlY3Rpb247XG59XG5cbmNsYXNzIFJlZmxlY3Rpb25BbmFseXNpcyB7XG4gICAgLy8gVE9ETyAtIG5lZWQgdG8gcG9wdWxhdGUgdGhpcyBkdXJpbmcgYW5hbHlzaXMgc28gd2UgY2FuIHdhcm47IHdpbGwgcmVwbGFjZSB0eXBlZG9jLXBsdWdpbi1taXNzaW5nLWV4cG9ydHNcbiAgICB1bmV4cG9ydGVkUmVmZXJlbmNlID0gbmV3IFNldDxSZWZsZWN0aW9uPigpO1xuXG4gICAgbWVyZ2VXaXRoUGFyZW50ID0gbmV3IFNldDxEZWNsYXJhdGlvblJlZmxlY3Rpb24+KCk7XG4gICAgbWVyZ2VJbnRvID0gbmV3IE1hcDxEZWNsYXJhdGlvblJlZmxlY3Rpb24sIERlY2xhcmF0aW9uUmVmbGVjdGlvbj4oKTtcbn1cblxuLyoqXG4gKiBUcmFuc2Zvcm0gcmVmbGVjdGlvbnMgdG8gaW1wcm92ZSBmaW5hbCBvdXRwdXQuXG4gKi9cbmZ1bmN0aW9uIGFuYWx5emVSZWZsZWN0aW9ucyhub2RlOiBSZWZsZWN0aW9uLCBhbmFseXNpczogUmVmbGVjdGlvbkFuYWx5c2lzKSB7XG4gICAgdmlzaXQobm9kZSwgc3ViamVjdCA9PiB7XG4gICAgICAgIC8vIFRPRE8gLSBwb3B1bGF0ZSBhbmFseXNpcy51bmV4cG9yZWRSZWZlcmVuY2UgKG9yIHBlcmhhcHMganVzdCBwcmludCB3YXJuaW5nKVxuXG4gICAgICAgIGNvbnN0IGNoaWxkcmVuID0gY2hpbGRyZW5PZihzdWJqZWN0KTtcbiAgICAgICAgY29uc3QgbWVyZ2VhYmxlID0ge30gYXMgUmVjb3JkPHN0cmluZywgRGVjbGFyYXRpb25SZWZsZWN0aW9uPjtcbiAgICAgICAgY29uc3QgbmFtZXNwYWNlcyA9IG5ldyBTZXQ8RGVjbGFyYXRpb25SZWZsZWN0aW9uPigpO1xuICAgICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNoaWxkcmVuKSB7XG4gICAgICAgICAgICBpZiAoY2hpbGQua2luZE9mKFJlZmxlY3Rpb25LaW5kLkNsYXNzT3JJbnRlcmZhY2UgfCBSZWZsZWN0aW9uS2luZC5GdW5jdGlvbikpIHtcbiAgICAgICAgICAgICAgICBtZXJnZWFibGVbY2hpbGQubmFtZV0gPSBjaGlsZDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoY2hpbGQua2luZE9mKFJlZmxlY3Rpb25LaW5kLk5hbWVzcGFjZSkpIHtcbiAgICAgICAgICAgICAgICBuYW1lc3BhY2VzLmFkZChjaGlsZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IG5zIG9mIG5hbWVzcGFjZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lcmdlSW50byA9IG1lcmdlYWJsZVtucy5uYW1lXTtcbiAgICAgICAgICAgIGlmIChtZXJnZUludG8pIHtcbiAgICAgICAgICAgICAgICBhbmFseXNpcy5tZXJnZUludG8uc2V0KG5zLCBtZXJnZUludG8pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIHJlcGFpclJlZmxlY3Rpb25zKGFuYWx5c2lzOiBSZWZsZWN0aW9uQW5hbHlzaXMpIHtcbiAgICBmb3IgKGNvbnN0IHRvTWVyZ2Ugb2YgYW5hbHlzaXMubWVyZ2VXaXRoUGFyZW50KSB7XG4gICAgICAgIGlmICh0b01lcmdlLnBhcmVudCBpbnN0YW5jZW9mIERlY2xhcmF0aW9uUmVmbGVjdGlvbikge1xuICAgICAgICAgICAgbWVyZ2VJbnRvKHRvTWVyZ2UsIHRvTWVyZ2UucGFyZW50KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGNvbnN0IFt0b01lcmdlLCBpbnRvXSBvZiBhbmFseXNpcy5tZXJnZUludG8uZW50cmllcygpKSB7XG4gICAgICAgIG1lcmdlSW50byh0b01lcmdlLCBpbnRvKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1vdmVOb2RlKHN1YmplY3Q6IERlY2xhcmF0aW9uUmVmbGVjdGlvbiwgaW50bzogQ29udGFpbmVyUmVmbGVjdGlvbikge1xuICAgIGNvbnN0IGZyb20gPSBzdWJqZWN0LnBhcmVudCBhcyBDb250YWluZXJSZWZsZWN0aW9uO1xuXG4gICAgLy8gTm8gYWN0dWFsIG1vdmVtZW50XG4gICAgaWYgKGZyb20gPT09IGludG8pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBmcm9tIG9sZCBwYXJlbnRcbiAgICBpZiAoZnJvbSkge1xuICAgICAgICBmcm9tLnJlbW92ZUNoaWxkKHN1YmplY3QpO1xuICAgIH1cblxuICAgIC8vIEFkZCB0byBuZXcgcGFyZW50XG4gICAgaW50by5hZGRDaGlsZChzdWJqZWN0KTtcbiAgICBzdWJqZWN0LnBhcmVudCA9IGludG87XG5cbiAgICAvLyBXaGVuIG1lcmdpbmcgYSBuYW1lc3BhY2UgaW50byBhIHR5cGUgdHdlYWsgbW9kaWZpZXIgYW5kIGtpbmQgYXBwcm9wcmlhdGVseSAoYSBiaXQgb2YgZ3Vlc3NpbmcgaGVyZTsgbWlnaHQgbmVlZFxuICAgIC8vIHR3ZWFraW5nKVxuICAgIGlmIChcbiAgICAgICAgZnJvbS5raW5kT2YoUmVmbGVjdGlvbktpbmQuTmFtZXNwYWNlKSAmJlxuICAgICAgICBpbnRvLmtpbmRPZihSZWZsZWN0aW9uS2luZC5DbGFzc09ySW50ZXJmYWNlKSAmJlxuICAgICAgICBzdWJqZWN0LmtpbmRPZihSZWZsZWN0aW9uS2luZC5Tb21lVmFsdWUpXG4gICAgKSB7XG4gICAgICAgIHN1YmplY3QuZmxhZ3Muc2V0RmxhZyhSZWZsZWN0aW9uRmxhZy5TdGF0aWMsIHRydWUpO1xuICAgICAgICBpZiAoc3ViamVjdC5raW5kT2YoUmVmbGVjdGlvbktpbmQuVmFyaWFibGUpKSB7XG4gICAgICAgICAgICBzdWJqZWN0LmtpbmQgPSBSZWZsZWN0aW9uS2luZC5Qcm9wZXJ0eTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gbWVyZ2VJbnRvKGZyb206IERlY2xhcmF0aW9uUmVmbGVjdGlvbiwgaW50bzogQ29udGFpbmVyUmVmbGVjdGlvbikge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gY2hpbGRyZW5PZihmcm9tKTtcbiAgICB3aGlsZSAoY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgIG1vdmVOb2RlKGNoaWxkcmVuWzBdLCBpbnRvKTtcbiAgICB9XG4gICAgKGZyb20ucGFyZW50IGFzIENvbnRhaW5lclJlZmxlY3Rpb24pPy5yZW1vdmVDaGlsZChmcm9tKTtcbiAgICAvLyBUT0RPIC0gcmVtYXAgbmFtZVxufVxuXG5mdW5jdGlvbiBjaGlsZHJlbk9mKG5vZGU6IFJlZmxlY3Rpb24pIHtcbiAgICBpZiAobm9kZSBpbnN0YW5jZW9mIENvbnRhaW5lclJlZmxlY3Rpb24pIHtcbiAgICAgICAgaWYgKG5vZGUuY2hpbGRyZW4gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgbm9kZS5jaGlsZHJlbiA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlLmNoaWxkcmVuO1xuICAgIH1cbiAgICByZXR1cm4gW107XG59XG5cbi8qKlxuICogVmlzaXQgYWxsIG5vZGVzIGluIGEgcmVmbGVjdGlvbiB0cmVlLiAgUmVmbGVjdGlvbiBoYXMgYSBcInZpc2l0XCIgbWV0aG9kIGJ1dCBpdCdzIGp1c3QgYSBicmFuY2ggb24gdHlwZS5cbiAqL1xuZnVuY3Rpb24gdmlzaXQobm9kZTogUmVmbGVjdGlvbiwgdmlzaXRvcjogKG5vZGU6IFJlZmxlY3Rpb24pID0+IHZvaWQpIHtcbiAgICB2aXNpdG9yKG5vZGUpO1xuXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBjaGlsZHJlbk9mKG5vZGUpKSB7XG4gICAgICAgIHZpc2l0KGNoaWxkLCB2aXNpdG9yKTtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxnQkFBZ0I7QUFDekI7QUFBQSxFQUNJO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBRUE7QUFBQSxFQUNBO0FBQUEsT0FFRztBQUNQLFNBQVMsY0FBYztBQUd2QixTQUFTLGFBQWE7QUFLdEIsTUFBTSxVQUFVLENBQUMsc0JBQXNCO0FBR3ZDLE1BQU0sY0FBYztBQUVwQixNQUFNLGdCQUFnQjtBQUFBLEVBQ2xCLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1oQjtBQUtBLGVBQXNCLFVBQVUsS0FBYyxVQUFvQjtBQUM5RCxRQUFNLFVBQVUsSUFBSTtBQUdwQixRQUFNLGNBQWMsTUFBYztBQUdsQyxRQUFNLFdBQVcsSUFBSSxLQUFLO0FBRTFCLGFBQVcsUUFBUSxTQUFTO0FBQ3hCLFVBQU0sT0FBTyxRQUFRLElBQUk7QUFDekIsUUFBSSxLQUFLLFNBQVMsT0FBTyxHQUFHO0FBQ3hCO0FBQUEsSUFDSjtBQUVBLFFBQUksT0FBTyxJQUFJLEdBQUc7QUFDZCxVQUFJLENBQUMsWUFBWSxTQUFTLElBQUksR0FBRztBQUM3QixvQkFBWSxLQUFLLElBQUk7QUFBQSxNQUN6QjtBQUFBLElBQ0osT0FBTztBQUNILFlBQU0sSUFBSSxNQUFNLDhCQUE4QixJQUFJLFNBQVMsUUFBUSxJQUFJLENBQUMsRUFBRTtBQUFBLElBQzlFO0FBQUEsRUFDSjtBQUVBLFFBQU0sTUFBTSxNQUFNLGtCQUFrQjtBQUFBLElBQ2hDLGtCQUFrQjtBQUFB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O0FBQUEsTUFDNUIsV0FBVyxNQUFNLE9BQU8sZUFBZSxTQUFTLEdBQUc7QUFDL0MsbUJBQVcsSUFBSSxLQUFLO0FBQUEsTUFDeEI7QUFBQSxJQUNKO0FBRUEsZUFBVyxNQUFNLFlBQVk7QUFDekIsWUFBTUEsYUFBWSxVQUFVLEdBQUcsSUFBSTtBQUNuQyxVQUFJQSxZQUFXO0FBQ1gsaUJBQVMsVUFBVSxJQUFJLElBQUlBLFVBQVM7QUFBQSxNQUN4QztBQUFBLElBQ0o7QUFBQSxFQUNKLENBQUM7QUFDTDtBQUVBLFNBQVMsa0JBQWtCLFVBQThCO0FBQ3JELGFBQVcsV0FBVyxTQUFTLGlCQUFpQjtBQUM1QyxRQUFJLFFBQVEsa0JBQWtCLHVCQUF1QjtBQUNqRCxnQkFBVSxTQUFTLFFBQVEsTUFBTTtBQUFBLElBQ3JDO0FBQUEsRUFDSjtBQUNBLGFBQVcsQ0FBQyxTQUFTLElBQUksS0FBSyxTQUFTLFVBQVUsUUFBUSxHQUFHO0FBQ3hELGNBQVUsU0FBUyxJQUFJO0FBQUEsRUFDM0I7QUFDSjtBQUVBLFNBQVMsU0FBUyxTQUFnQyxNQUEyQjtBQUN6RSxRQUFNLE9BQU8sUUFBUTtBQUdyQixNQUFJLFNBQVMsTUFBTTtBQUNmO0FBQUEsRUFDSjtBQUdBLE1BQUksTUFBTTtBQUNOLFNBQUssWUFBWSxPQUFPO0FBQUEsRUFDNUI7QUFHQSxPQUFLLFNBQVMsT0FBTztBQUNyQixVQUFRLFNBQVM7QUFJakIsTUFDSSxLQUFLLE9BQU8sZUFBZSxTQUFTLEtBQ3BDLEtBQUssT0FBTyxlQUFlLGdCQUFnQixLQUMzQyxRQUFRLE9BQU8sZUFBZSxTQUFTLEdBQ3pDO0FBQ0UsWUFBUSxNQUFNLFFBQVEsZUFBZSxRQUFRLElBQUk7QUFDakQsUUFBSSxRQUFRLE9BQU8sZUFBZSxRQUFRLEdBQUc7QUFDekMsY0FBUSxPQUFPLGVBQWU7QUFBQSxJQUNsQztBQUFBLEVBQ0o7QUFDSjtBQUVBLFNBQVMsVUFBVSxNQUE2QixNQUEyQjtBQUN2RSxRQUFNLFdBQVcsV0FBVyxJQUFJO0FBQ2hDLFNBQU8sU0FBUyxRQUFRO0FBQ3BCLGFBQVMsU0FBUyxDQUFDLEdBQUcsSUFBSTtBQUFBLEVBQzlCO0FBQ0EsRUFBQyxLQUFLLFFBQWdDLFlBQVksSUFBSTtBQUUxRDtBQUVBLFNBQVMsV0FBVyxNQUFrQjtBQUNsQyxNQUFJLGdCQUFnQixxQkFBcUI7QUFDckMsUUFBSSxLQUFLLGFBQWEsUUFBVztBQUM3QixXQUFLLFdBQVcsQ0FBQztBQUFBLElBQ3JCO0FBQ0EsV0FBTyxLQUFLO0FBQUEsRUFDaEI7QUFDQSxTQUFPLENBQUM7QUFDWjtBQUtBLFNBQVMsTUFBTSxNQUFrQixTQUFxQztBQUNsRSxVQUFRLElBQUk7QUFFWixhQUFXLFNBQVMsV0FBVyxJQUFJLEdBQUc7QUFDbEMsVUFBTSxPQUFPLE9BQU87QUFBQSxFQUN4QjtBQUNKOyIsCiAgIm5hbWVzIjogWyJtZXJnZUludG8iXQp9Cg==
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { createHash } from "crypto";
6
+ import { createHash } from "node:crypto";
7
7
  import { BuildError } from "./error.js";
8
8
  import { Graph } from "./graph.js";
9
9
  import { createTypescriptContext } from "./typescript.js";
@@ -177,4 +177,4 @@ export {
177
177
  ProjectBuilder,
178
178
  Target
179
179
  };
180
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3Byb2plY3QtYnVpbGRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVIYXNoIH0gZnJvbSBcImNyeXB0b1wiO1xuaW1wb3J0IHsgUHJvZ3Jlc3MgfSBmcm9tIFwiLi4vdXRpbC9wcm9ncmVzcy5qc1wiO1xuaW1wb3J0IHsgQnVpbGRFcnJvciB9IGZyb20gXCIuL2Vycm9yLmpzXCI7XG5pbXBvcnQgeyBHcmFwaCB9IGZyb20gXCIuL2dyYXBoLmpzXCI7XG5pbXBvcnQgeyBCdWlsZEluZm9ybWF0aW9uLCBQcm9qZWN0IH0gZnJvbSBcIi4vcHJvamVjdC5qc1wiO1xuaW1wb3J0IHsgY3JlYXRlVHlwZXNjcmlwdENvbnRleHQgfSBmcm9tIFwiLi90eXBlc2NyaXB0LmpzXCI7XG5pbXBvcnQgeyBUeXBlc2NyaXB0Q29udGV4dCB9IGZyb20gXCIuL3R5cGVzY3JpcHQvY29udGV4dC5qc1wiO1xuXG5leHBvcnQgZW51bSBUYXJnZXQge1xuICAgIGNsZWFuID0gXCJjbGVhblwiLFxuICAgIHR5cGVzID0gXCJ0eXBlc1wiLFxuICAgIGVzbSA9IFwiZXNtXCIsXG4gICAgY2pzID0gXCJjanNcIixcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcbiAgICB0YXJnZXRzPzogVGFyZ2V0W107XG4gICAgY2xlYW4/OiBib29sZWFuO1xuICAgIGdyYXBoPzogR3JhcGg7XG59XG5cbi8qKlxuICogSGlnaC1sZXZlbCBidWlsZCBjb29yZGluYXRpb24uXG4gKlxuICogV2FybmluZzogVGhpcyBjbGFzcyBpcyBpbnRlbmRlZCBmb3IgY29tbWFuZCBsaW5lIHVzZSBhbmQgd2lsbCBwcm9jZXNzLmV4aXQgaWYgdGhpbmdzIGdvIHdyb25nLlxuICovXG5leHBvcnQgY2xhc3MgUHJvamVjdEJ1aWxkZXIge1xuICAgIHVuY29uZGl0aW9uYWw6IGJvb2xlYW47XG4gICAgdHNDb250ZXh0PzogVHlwZXNjcmlwdENvbnRleHQ7XG4gICAgZ3JhcGg/OiBHcmFwaDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgb3B0aW9uczogT3B0aW9ucyA9IHt9KSB7XG4gICAgICAgIHRoaXMuZ3JhcGggPSBvcHRpb25zLmdyYXBoO1xuICAgICAgICB0aGlzLnVuY29uZGl0aW9uYWwgPVxuICAgICAgICAgICAgb3B0aW9ucy5jbGVhbiB8fCAob3B0aW9ucy50YXJnZXRzICE9PSB1bmRlZmluZWQgJiYgb3B0aW9ucy50YXJnZXRzPy5pbmRleE9mKFRhcmdldC5jbGVhbikgIT09IC0xKTtcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuY2xlYW47XG4gICAgfVxuXG4gICAgY2xlYXJDbGVhbigpIHtcbiAgICAgICAgZGVsZXRlIHRoaXMub3B0aW9ucy5jbGVhbjtcbiAgICB9XG5cbiAgICBoYXNUYXJnZXRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLnRhcmdldHMgJiYgdGhpcy5vcHRpb25zLnRhcmdldHMubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgY29uZmlndXJlKHByb2plY3Q6IFByb2plY3QpIHtcbiAgICAgICAgaWYgKCFwcm9qZWN0LnBrZy5oYXNDb25maWcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGF3YWl0IHByb2plY3QuY29uZmlndXJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGJ1aWxkKHByb2plY3Q6IFByb2plY3QpIHtcbiAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBwcm9qZWN0LnBrZy5zdGFydChcIkJ1aWxkaW5nXCIpO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLiNkb0J1aWxkKHByb2plY3QsIHByb2dyZXNzKTtcbiAgICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgICAgICBwcm9ncmVzcy5jbG9zZSgpO1xuICAgICAgICAgICAgcHJvY2Vzcy5zdGRlcnIud3JpdGUoYCR7ZS5zdGFjayA/PyBlLm1lc3NhZ2V9XFxuXFxuYCk7XG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgIH1cblxuICAgICAgICBwcm9ncmVzcy5jbG9zZSgpO1xuICAgIH1cblxuICAgIGFzeW5jICNkb0J1aWxkKHByb2plY3Q6IFByb2plY3QsIHByb2dyZXNzOiBQcm9ncmVzcykge1xuICAgICAgICBjb25zdCB0YXJnZXRzID0gdGhpcy4jc2VsZWN0VGFyZ2V0cyhwcm9qZWN0KTtcblxuICAgICAgICBpZiAodGFyZ2V0cy5oYXMoVGFyZ2V0LmNsZWFuKSB8fCB0aGlzLm9wdGlvbnMuY2xlYW4pIHtcbiAgICAgICAgICAgIGF3YWl0IHByb2dyZXNzLnJ1bihcIkNsZWFuXCIsICgpID0+IHByb2plY3QuY2xlYW4oKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRhcmdldHMuaGFzKFRhcmdldC50eXBlcykgJiYgIXRhcmdldHMuaGFzKFRhcmdldC5lc20pICYmICF0YXJnZXRzLmhhcyhUYXJnZXQuY2pzKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5mbzogQnVpbGRJbmZvcm1hdGlvbiA9IHt9O1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IGF3YWl0IHByb2plY3QuY29uZmlndXJlKCk7XG5cbiAgICAgICAgYXdhaXQgY29uZmlnPy5iZWZvcmU/Lih7IHByb2plY3QgfSk7XG5cbiAgICAgICAgLy8gSWYgYXZhaWxhYmxlIHdlIHVzZSBncmFwaCB0byBhY2Nlc3MgZGVwZW5kZW5jeSBBUEkgc2hhc1xuICAgICAgICBjb25zdCBncmFwaCA9IHRoaXMuZ3JhcGggPz8gKGF3YWl0IEdyYXBoLmZvclByb2plY3QocHJvamVjdC5wa2cucGF0aCkpO1xuICAgICAgICBsZXQgbm9kZTogR3JhcGguTm9kZSB8IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKGdyYXBoKSB7XG4gICAgICAgICAgICBub2RlID0gZ3JhcGguZ2V0KHByb2plY3QucGtnLm5hbWUpO1xuICAgICAgICAgICAgZm9yIChjb25zdCBkZXAgb2Ygbm9kZS5kZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoZGVwLmluZm8uYXBpU2hhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGluZm8uZGVwZW5kZW5jeUFwaVNoYXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5mby5kZXBlbmRlbmN5QXBpU2hhcyA9IHt9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGluZm8uZGVwZW5kZW5jeUFwaVNoYXNbZGVwLnBrZy5uYW1lXSA9IGRlcC5pbmZvLmFwaVNoYTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGFyZ2V0cy5oYXMoVGFyZ2V0LnR5cGVzKSkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAvLyBPYnRhaW4gb3IgaW5pdGlhbGl6ZSB0eXBlc2NyaXB0IHNvbHV0aW9uIGJ1aWxkZXJcbiAgICAgICAgICAgICAgICBsZXQgY29udGV4dCA9IHRoaXMudHNDb250ZXh0O1xuICAgICAgICAgICAgICAgIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGV4dCA9IHRoaXMudHNDb250ZXh0ID0gYXdhaXQgY3JlYXRlVHlwZXNjcmlwdENvbnRleHQocHJvamVjdC5wa2cud29ya3NwYWNlLCBncmFwaCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgcmVmcmVzaENhbGxiYWNrID0gcHJvZ3Jlc3MucmVmcmVzaC5iaW5kKHByb2dyZXNzKTtcblxuICAgICAgICAgICAgICAgIGlmIChwcm9qZWN0LnBrZy5pc0xpYnJhcnkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYXBpU2hhID0gY3JlYXRlSGFzaChcInNoYTFcIik7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gT3VyIEFQSSBTSEEgY2hhbmdlcyBpZiB0aGF0IG9mIGFueSBkZXBlbmRlbmN5IGNoYW5nZXNcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIG5vZGUuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRlcC5pbmZvLmFwaVNoYSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwaVNoYS51cGRhdGUoZGVwLmluZm8uYXBpU2hhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBwcm9ncmVzcy5ydW4oYEdlbmVyYXRlICR7cHJvZ3Jlc3MuZW1waGFzaXplKFwidHlwZSBkZWNsYXJhdGlvbnNcIil9YCwgYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgY29udGV4dC5idWlsZChwcm9qZWN0LnBrZywgXCJzcmNcIiwgcmVmcmVzaENhbGxiYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHByb2plY3QuaGFzaERlY2xhcmF0aW9ucyhhcGlTaGEpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBXb3JrLWluLXByb2dyZXNzIGFsdGVybmF0aXZlIGRvYyBnZW5lcmF0aW9uIGltcGxlbWVudGF0aW9uXG4gICAgICAgICAgICAgICAgICAgIC8vIGF3YWl0IHByb2dyZXNzLnJ1bihgRXh0cmFjdCAke3Byb2dyZXNzLmVtcGhhc2l6ZShcImFwaSBkb2NzXCIpfWAsICgpID0+XG4gICAgICAgICAgICAgICAgICAgIC8vICAgICBlbWl0QXBpRG9jKHByb2plY3QucGtnLCBwcm9ncmFtLCBwcm9ncmVzcyksXG4gICAgICAgICAgICAgICAgICAgIC8vICk7XG5cbiAgICAgICAgICAgICAgICAgICAgaW5mby5hcGlTaGEgPSBhcGlTaGEuZGlnZXN0KFwiaGV4XCIpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHByb2dyZXNzLnJ1bihgVmFsaWRhdGUgJHtwcm9ncmVzcy5lbXBoYXNpemUoXCJ0eXBlc1wiKX1gLCAoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5idWlsZChwcm9qZWN0LnBrZywgXCJzcmNcIiwgcmVmcmVzaENhbGxiYWNrLCBmYWxzZSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcm9qZWN0LnBrZy5oYXNUZXN0cykge1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBwcm9ncmVzcy5ydW4oYFZhbGlkYXRlICR7cHJvZ3Jlc3MuZW1waGFzaXplKFwidGVzdCB0eXBlc1wiKX1gLCAoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5idWlsZChwcm9qZWN0LnBrZywgXCJ0ZXN0XCIsIHJlZnJlc2hDYWxsYmFjayksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgQnVpbGRFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICBwcm9ncmVzcy5mYWlsdXJlKFwiVGVybWluYXRpbmcgZHVlIHRvIHR5cGUgZXJyb3JzXCIpO1xuICAgICAgICAgICAgICAgICAgICBwcm9jZXNzLnN0ZGVyci53cml0ZShgJHtlLmRpYWdub3N0aWNzfVxcbmApO1xuICAgICAgICAgICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb3JtYXRzID0gQXJyYXk8XCJlc21cIiB8IFwiY2pzXCI+KCk7XG4gICAgICAgIGlmICh0YXJnZXRzLmhhcyhUYXJnZXQuZXNtKSkge1xuICAgICAgICAgICAgZm9ybWF0cy5wdXNoKFwiZXNtXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0YXJnZXRzLmhhcyhUYXJnZXQuY2pzKSkge1xuICAgICAgICAgICAgZm9ybWF0cy5wdXNoKFwiY2pzXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZvcm1hdHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBncm91cHMgPSBbcHJvamVjdC5wa2cuaXNMaWJyYXJ5ID8gXCJsaWJyYXJ5XCIgOiBcImFwcFwiXTtcbiAgICAgICAgICAgIGlmIChwcm9qZWN0LnBrZy5oYXNUZXN0cykge1xuICAgICAgICAgICAgICAgIGdyb3Vwcy5wdXNoKFwidGVzdHNcIik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdERlc2MgPSBmb3JtYXRzLm1hcChwcm9ncmVzcy5lbXBoYXNpemUpLmpvaW4oXCIrXCIpO1xuICAgICAgICAgICAgY29uc3QgZ3JvdXBEZXNjID0gZ3JvdXBzLm1hcChwcm9ncmVzcy5lbXBoYXNpemUpLmpvaW4oXCIrXCIpO1xuXG4gICAgICAgICAgICBhd2FpdCBwcm9ncmVzcy5ydW4oYFRyYW5zcGlsZSAke2dyb3VwRGVzY30gdG8gJHtmb3JtYXREZXNjfWAsIGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGZvcm1hdCBvZiBmb3JtYXRzKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuI3RyYW5zcGlsZShwcm9qZWN0LCBmb3JtYXQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgYXdhaXQgY29uZmlnPy5hZnRlcj8uKHsgcHJvamVjdCB9KTtcblxuICAgICAgICAvLyBPbmx5IHVwZGF0ZSBidWlsZCBpbmZvcm1hdGlvbiB3aGVuIHRoZXJlIGFyZSBubyBleHBsaWNpdCB0YXJnZXRzIHNvIHdlIGtub3cgaXQncyBhIGZ1bGwgYnVpbGRcbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbnMudGFyZ2V0cz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBhd2FpdCBwcm9qZWN0LnJlY29yZEJ1aWxkSW5mbyhpbmZvKTtcbiAgICAgICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgICAgICAgbm9kZS5pbmZvID0gaW5mbztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jICN0cmFuc3BpbGUocHJvamVjdDogUHJvamVjdCwgZm9ybWF0OiBcImVzbVwiIHwgXCJjanNcIikge1xuICAgICAgICBhd2FpdCBwcm9qZWN0LmJ1aWxkU291cmNlKGZvcm1hdCk7XG4gICAgICAgIGlmIChwcm9qZWN0LnBrZy5oYXNUZXN0cykge1xuICAgICAgICAgICAgYXdhaXQgcHJvamVjdC5idWlsZFRlc3RzKGZvcm1hdCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjc2VsZWN0VGFyZ2V0cyhwcm9qZWN0OiBQcm9qZWN0KSB7XG4gICAgICAgIGNvbnN0IHRhcmdldHMgPSBuZXcgU2V0PHN0cmluZz4odGhpcy5vcHRpb25zLnRhcmdldHMpO1xuXG4gICAgICAgIGlmICghdGFyZ2V0cy5zaXplKSB7XG4gICAgICAgICAgICB0YXJnZXRzLmFkZChUYXJnZXQudHlwZXMpO1xuXG4gICAgICAgICAgICBpZiAocHJvamVjdC5wa2cuc3VwcG9ydHNFc20pIHtcbiAgICAgICAgICAgICAgICB0YXJnZXRzLmFkZChUYXJnZXQuZXNtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHByb2plY3QucGtnLnN1cHBvcnRzQ2pzKSB7XG4gICAgICAgICAgICAgICAgdGFyZ2V0cy5hZGQoVGFyZ2V0LmNqcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXByb2plY3QucGtnLnN1cHBvcnRzRXNtKSB7XG4gICAgICAgICAgICAgICAgdGFyZ2V0cy5kZWxldGUoVGFyZ2V0LmVzbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghcHJvamVjdC5wa2cuc3VwcG9ydHNDanMpIHtcbiAgICAgICAgICAgICAgICB0YXJnZXRzLmRlbGV0ZShUYXJnZXQuY2pzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0YXJnZXRzO1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLGtCQUFrQjtBQUUzQixTQUFTLGtCQUFrQjtBQUMzQixTQUFTLGFBQWE7QUFFdEIsU0FBUywrQkFBK0I7QUFHakMsSUFBSyxTQUFMLGtCQUFLQSxZQUFMO0FBQ0gsRUFBQUEsUUFBQSxXQUFRO0FBQ1IsRUFBQUEsUUFBQSxXQUFRO0FBQ1IsRUFBQUEsUUFBQSxTQUFNO0FBQ04sRUFBQUEsUUFBQSxTQUFNO0FBSkUsU0FBQUE7QUFBQSxHQUFBO0FBa0JMLE1BQU0sZUFBZTtBQUFBLEVBS3hCLFlBQW9CLFVBQW1CLENBQUMsR0FBRztBQUF2QjtBQUNoQixTQUFLLFFBQVEsUUFBUTtBQUNyQixTQUFLLGdCQUNELFFBQVEsU0FBVSxRQUFRLFlBQVksVUFBYSxRQUFRLFNBQVMsUUFBUSxtQkFBWSxNQUFNO0FBQUEsRUFDdEc7QUFBQSxFQVJB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
180
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3Byb2plY3QtYnVpbGRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVIYXNoIH0gZnJvbSBcIm5vZGU6Y3J5cHRvXCI7XG5pbXBvcnQgeyBQcm9ncmVzcyB9IGZyb20gXCIuLi91dGlsL3Byb2dyZXNzLmpzXCI7XG5pbXBvcnQgeyBCdWlsZEVycm9yIH0gZnJvbSBcIi4vZXJyb3IuanNcIjtcbmltcG9ydCB7IEdyYXBoIH0gZnJvbSBcIi4vZ3JhcGguanNcIjtcbmltcG9ydCB7IEJ1aWxkSW5mb3JtYXRpb24sIFByb2plY3QgfSBmcm9tIFwiLi9wcm9qZWN0LmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVUeXBlc2NyaXB0Q29udGV4dCB9IGZyb20gXCIuL3R5cGVzY3JpcHQuanNcIjtcbmltcG9ydCB7IFR5cGVzY3JpcHRDb250ZXh0IH0gZnJvbSBcIi4vdHlwZXNjcmlwdC9jb250ZXh0LmpzXCI7XG5cbmV4cG9ydCBlbnVtIFRhcmdldCB7XG4gICAgY2xlYW4gPSBcImNsZWFuXCIsXG4gICAgdHlwZXMgPSBcInR5cGVzXCIsXG4gICAgZXNtID0gXCJlc21cIixcbiAgICBjanMgPSBcImNqc1wiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvbnMge1xuICAgIHRhcmdldHM/OiBUYXJnZXRbXTtcbiAgICBjbGVhbj86IGJvb2xlYW47XG4gICAgZ3JhcGg/OiBHcmFwaDtcbn1cblxuLyoqXG4gKiBIaWdoLWxldmVsIGJ1aWxkIGNvb3JkaW5hdGlvbi5cbiAqXG4gKiBXYXJuaW5nOiBUaGlzIGNsYXNzIGlzIGludGVuZGVkIGZvciBjb21tYW5kIGxpbmUgdXNlIGFuZCB3aWxsIHByb2Nlc3MuZXhpdCBpZiB0aGluZ3MgZ28gd3JvbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9qZWN0QnVpbGRlciB7XG4gICAgdW5jb25kaXRpb25hbDogYm9vbGVhbjtcbiAgICB0c0NvbnRleHQ/OiBUeXBlc2NyaXB0Q29udGV4dDtcbiAgICBncmFwaD86IEdyYXBoO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBPcHRpb25zID0ge30pIHtcbiAgICAgICAgdGhpcy5ncmFwaCA9IG9wdGlvbnMuZ3JhcGg7XG4gICAgICAgIHRoaXMudW5jb25kaXRpb25hbCA9XG4gICAgICAgICAgICBvcHRpb25zLmNsZWFuIHx8IChvcHRpb25zLnRhcmdldHMgIT09IHVuZGVmaW5lZCAmJiBvcHRpb25zLnRhcmdldHM/LmluZGV4T2YoVGFyZ2V0LmNsZWFuKSAhPT0gLTEpO1xuICAgIH1cblxuICAgIGdldCBoYXNDbGVhbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5jbGVhbjtcbiAgICB9XG5cbiAgICBjbGVhckNsZWFuKCkge1xuICAgICAgICBkZWxldGUgdGhpcy5vcHRpb25zLmNsZWFuO1xuICAgIH1cblxuICAgIGhhc1RhcmdldHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMudGFyZ2V0cyAmJiB0aGlzLm9wdGlvbnMudGFyZ2V0cy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjb25maWd1cmUocHJvamVjdDogUHJvamVjdCkge1xuICAgICAgICBpZiAoIXByb2plY3QucGtnLmhhc0NvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgYXdhaXQgcHJvamVjdC5jb25maWd1cmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgYnVpbGQocHJvamVjdDogUHJvamVjdCkge1xuICAgICAgICBjb25zdCBwcm9ncmVzcyA9IHByb2plY3QucGtnLnN0YXJ0KFwiQnVpbGRpbmdcIik7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuI2RvQnVpbGQocHJvamVjdCwgcHJvZ3Jlc3MpO1xuICAgICAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgICAgICAgIHByb2dyZXNzLmNsb3NlKCk7XG4gICAgICAgICAgICBwcm9jZXNzLnN0ZGVyci53cml0ZShgJHtlLnN0YWNrID8/IGUubWVzc2FnZX1cXG5cXG5gKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHByb2dyZXNzLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgI2RvQnVpbGQocHJvamVjdDogUHJvamVjdCwgcHJvZ3Jlc3M6IFByb2dyZXNzKSB7XG4gICAgICAgIGNvbnN0IHRhcmdldHMgPSB0aGlzLiNzZWxlY3RUYXJnZXRzKHByb2plY3QpO1xuXG4gICAgICAgIGlmICh0YXJnZXRzLmhhcyhUYXJnZXQuY2xlYW4pIHx8IHRoaXMub3B0aW9ucy5jbGVhbikge1xuICAgICAgICAgICAgYXdhaXQgcHJvZ3Jlc3MucnVuKFwiQ2xlYW5cIiwgKCkgPT4gcHJvamVjdC5jbGVhbigpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGFyZ2V0cy5oYXMoVGFyZ2V0LnR5cGVzKSAmJiAhdGFyZ2V0cy5oYXMoVGFyZ2V0LmVzbSkgJiYgIXRhcmdldHMuaGFzKFRhcmdldC5janMpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbmZvOiBCdWlsZEluZm9ybWF0aW9uID0ge307XG5cbiAgICAgICAgY29uc3QgY29uZmlnID0gYXdhaXQgcHJvamVjdC5jb25maWd1cmUoKTtcblxuICAgICAgICBhd2FpdCBjb25maWc/LmJlZm9yZT8uKHsgcHJvamVjdCB9KTtcblxuICAgICAgICAvLyBJZiBhdmFpbGFibGUgd2UgdXNlIGdyYXBoIHRvIGFjY2VzcyBkZXBlbmRlbmN5IEFQSSBzaGFzXG4gICAgICAgIGNvbnN0IGdyYXBoID0gdGhpcy5ncmFwaCA/PyAoYXdhaXQgR3JhcGguZm9yUHJvamVjdChwcm9qZWN0LnBrZy5wYXRoKSk7XG4gICAgICAgIGxldCBub2RlOiBHcmFwaC5Ob2RlIHwgdW5kZWZpbmVkO1xuICAgICAgICBpZiAoZ3JhcGgpIHtcbiAgICAgICAgICAgIG5vZGUgPSBncmFwaC5nZXQocHJvamVjdC5wa2cubmFtZSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGRlcCBvZiBub2RlLmRlcGVuZGVuY2llcykge1xuICAgICAgICAgICAgICAgIGlmIChkZXAuaW5mby5hcGlTaGEgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaW5mby5kZXBlbmRlbmN5QXBpU2hhcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmZvLmRlcGVuZGVuY3lBcGlTaGFzID0ge307XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaW5mby5kZXBlbmRlbmN5QXBpU2hhc1tkZXAucGtnLm5hbWVdID0gZGVwLmluZm8uYXBpU2hhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0YXJnZXRzLmhhcyhUYXJnZXQudHlwZXMpKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIC8vIE9idGFpbiBvciBpbml0aWFsaXplIHR5cGVzY3JpcHQgc29sdXRpb24gYnVpbGRlclxuICAgICAgICAgICAgICAgIGxldCBjb250ZXh0ID0gdGhpcy50c0NvbnRleHQ7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0ID0gdGhpcy50c0NvbnRleHQgPSBhd2FpdCBjcmVhdGVUeXBlc2NyaXB0Q29udGV4dChwcm9qZWN0LnBrZy53b3Jrc3BhY2UsIGdyYXBoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCByZWZyZXNoQ2FsbGJhY2sgPSBwcm9ncmVzcy5yZWZyZXNoLmJpbmQocHJvZ3Jlc3MpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHByb2plY3QucGtnLmlzTGlicmFyeSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhcGlTaGEgPSBjcmVhdGVIYXNoKFwic2hhMVwiKTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBPdXIgQVBJIFNIQSBjaGFuZ2VzIGlmIHRoYXQgb2YgYW55IGRlcGVuZGVuY3kgY2hhbmdlc1xuICAgICAgICAgICAgICAgICAgICBpZiAobm9kZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBkZXAgb2Ygbm9kZS5kZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGVwLmluZm8uYXBpU2hhICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBpU2hhLnVwZGF0ZShkZXAuaW5mby5hcGlTaGEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHByb2dyZXNzLnJ1bihgR2VuZXJhdGUgJHtwcm9ncmVzcy5lbXBoYXNpemUoXCJ0eXBlIGRlY2xhcmF0aW9uc1wiKX1gLCBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCBjb250ZXh0LmJ1aWxkKHByb2plY3QucGtnLCBcInNyY1wiLCByZWZyZXNoQ2FsbGJhY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgcHJvamVjdC5oYXNoRGVjbGFyYXRpb25zKGFwaVNoYSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIFdvcmstaW4tcHJvZ3Jlc3MgYWx0ZXJuYXRpdmUgZG9jIGdlbmVyYXRpb24gaW1wbGVtZW50YXRpb25cbiAgICAgICAgICAgICAgICAgICAgLy8gYXdhaXQgcHJvZ3Jlc3MucnVuKGBFeHRyYWN0ICR7cHJvZ3Jlc3MuZW1waGFzaXplKFwiYXBpIGRvY3NcIil9YCwgKCkgPT5cbiAgICAgICAgICAgICAgICAgICAgLy8gICAgIGVtaXRBcGlEb2MocHJvamVjdC5wa2csIHByb2dyYW0sIHByb2dyZXNzKSxcbiAgICAgICAgICAgICAgICAgICAgLy8gKTtcblxuICAgICAgICAgICAgICAgICAgICBpbmZvLmFwaVNoYSA9IGFwaVNoYS5kaWdlc3QoXCJoZXhcIik7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgcHJvZ3Jlc3MucnVuKGBWYWxpZGF0ZSAke3Byb2dyZXNzLmVtcGhhc2l6ZShcInR5cGVzXCIpfWAsICgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmJ1aWxkKHByb2plY3QucGtnLCBcInNyY1wiLCByZWZyZXNoQ2FsbGJhY2ssIGZhbHNlKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHByb2plY3QucGtnLmhhc1Rlc3RzKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHByb2dyZXNzLnJ1bihgVmFsaWRhdGUgJHtwcm9ncmVzcy5lbXBoYXNpemUoXCJ0ZXN0IHR5cGVzXCIpfWAsICgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LmJ1aWxkKHByb2plY3QucGtnLCBcInRlc3RcIiwgcmVmcmVzaENhbGxiYWNrKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBCdWlsZEVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHByb2dyZXNzLmZhaWx1cmUoXCJUZXJtaW5hdGluZyBkdWUgdG8gdHlwZSBlcnJvcnNcIik7XG4gICAgICAgICAgICAgICAgICAgIHByb2Nlc3Muc3RkZXJyLndyaXRlKGAke2UuZGlhZ25vc3RpY3N9XFxuYCk7XG4gICAgICAgICAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZvcm1hdHMgPSBBcnJheTxcImVzbVwiIHwgXCJjanNcIj4oKTtcbiAgICAgICAgaWYgKHRhcmdldHMuaGFzKFRhcmdldC5lc20pKSB7XG4gICAgICAgICAgICBmb3JtYXRzLnB1c2goXCJlc21cIik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRhcmdldHMuaGFzKFRhcmdldC5janMpKSB7XG4gICAgICAgICAgICBmb3JtYXRzLnB1c2goXCJjanNcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZm9ybWF0cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3VwcyA9IFtwcm9qZWN0LnBrZy5pc0xpYnJhcnkgPyBcImxpYnJhcnlcIiA6IFwiYXBwXCJdO1xuICAgICAgICAgICAgaWYgKHByb2plY3QucGtnLmhhc1Rlc3RzKSB7XG4gICAgICAgICAgICAgICAgZ3JvdXBzLnB1c2goXCJ0ZXN0c1wiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgZm9ybWF0RGVzYyA9IGZvcm1hdHMubWFwKHByb2dyZXNzLmVtcGhhc2l6ZSkuam9pbihcIitcIik7XG4gICAgICAgICAgICBjb25zdCBncm91cERlc2MgPSBncm91cHMubWFwKHByb2dyZXNzLmVtcGhhc2l6ZSkuam9pbihcIitcIik7XG5cbiAgICAgICAgICAgIGF3YWl0IHByb2dyZXNzLnJ1bihgVHJhbnNwaWxlICR7Z3JvdXBEZXNjfSB0byAke2Zvcm1hdERlc2N9YCwgYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgZm9ybWF0IG9mIGZvcm1hdHMpIHtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy4jdHJhbnNwaWxlKHByb2plY3QsIGZvcm1hdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCBjb25maWc/LmFmdGVyPy4oeyBwcm9qZWN0IH0pO1xuXG4gICAgICAgIC8vIE9ubHkgdXBkYXRlIGJ1aWxkIGluZm9ybWF0aW9uIHdoZW4gdGhlcmUgYXJlIG5vIGV4cGxpY2l0IHRhcmdldHMgc28gd2Uga25vdyBpdCdzIGEgZnVsbCBidWlsZFxuICAgICAgICBpZiAoIXRoaXMub3B0aW9ucy50YXJnZXRzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGF3YWl0IHByb2plY3QucmVjb3JkQnVpbGRJbmZvKGluZm8pO1xuICAgICAgICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgICAgICAgICBub2RlLmluZm8gPSBpbmZvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgI3RyYW5zcGlsZShwcm9qZWN0OiBQcm9qZWN0LCBmb3JtYXQ6IFwiZXNtXCIgfCBcImNqc1wiKSB7XG4gICAgICAgIGF3YWl0IHByb2plY3QuYnVpbGRTb3VyY2UoZm9ybWF0KTtcbiAgICAgICAgaWYgKHByb2plY3QucGtnLmhhc1Rlc3RzKSB7XG4gICAgICAgICAgICBhd2FpdCBwcm9qZWN0LmJ1aWxkVGVzdHMoZm9ybWF0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNzZWxlY3RUYXJnZXRzKHByb2plY3Q6IFByb2plY3QpIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0cyA9IG5ldyBTZXQ8c3RyaW5nPih0aGlzLm9wdGlvbnMudGFyZ2V0cyk7XG5cbiAgICAgICAgaWYgKCF0YXJnZXRzLnNpemUpIHtcbiAgICAgICAgICAgIHRhcmdldHMuYWRkKFRhcmdldC50eXBlcyk7XG5cbiAgICAgICAgICAgIGlmIChwcm9qZWN0LnBrZy5zdXBwb3J0c0VzbSkge1xuICAgICAgICAgICAgICAgIHRhcmdldHMuYWRkKFRhcmdldC5lc20pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAocHJvamVjdC5wa2cuc3VwcG9ydHNDanMpIHtcbiAgICAgICAgICAgICAgICB0YXJnZXRzLmFkZChUYXJnZXQuY2pzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICghcHJvamVjdC5wa2cuc3VwcG9ydHNFc20pIHtcbiAgICAgICAgICAgICAgICB0YXJnZXRzLmRlbGV0ZShUYXJnZXQuZXNtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFwcm9qZWN0LnBrZy5zdXBwb3J0c0Nqcykge1xuICAgICAgICAgICAgICAgIHRhcmdldHMuZGVsZXRlKFRhcmdldC5janMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRhcmdldHM7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsa0JBQWtCO0FBRTNCLFNBQVMsa0JBQWtCO0FBQzNCLFNBQVMsYUFBYTtBQUV0QixTQUFTLCtCQUErQjtBQUdqQyxJQUFLLFNBQUwsa0JBQUtBLFlBQUw7QUFDSCxFQUFBQSxRQUFBLFdBQVE7QUFDUixFQUFBQSxRQUFBLFdBQVE7QUFDUixFQUFBQSxRQUFBLFNBQU07QUFDTixFQUFBQSxRQUFBLFNBQU07QUFKRSxTQUFBQTtBQUFBLEdBQUE7QUFrQkwsTUFBTSxlQUFlO0FBQUEsRUFLeEIsWUFBb0IsVUFBbUIsQ0FBQyxHQUFHO0FBQXZCO0FBQ2hCLFNBQUssUUFBUSxRQUFRO0FBQ3JCLFNBQUssZ0JBQ0QsUUFBUSxTQUFVLFFBQVEsWUFBWSxVQUFhLFFBQVEsU0FBUyxRQUFRLG1CQUFZLE1BQU07QUFBQSxFQUN0RztBQUFB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
@@ -3,8 +3,8 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Hash } from "crypto";
7
6
  import { Format } from "esbuild";
7
+ import { Hash } from "node:crypto";
8
8
  import { Package } from "../util/package.js";
9
9
  export declare const BUILD_INFO_LOCATION = "build/info.json";
10
10
  export declare const COMPILED_CONFIG_PATH = "build/build.config.js";
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/building/project.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAoB,MAAM,EAAE,MAAM,SAAS,CAAC;AAKnD,OAAO,EAAe,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE1D,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AAED,qBAAa,OAAO;;IAChB,GAAG,EAAE,OAAO,CAAC;gBAID,MAAM,GAAE,OAAO,GAAG,MAAY;IAcpC,WAAW,CAAC,MAAM,EAAE,MAAM;IAK1B,UAAU,CAAC,MAAM,EAAE,MAAM;IA2BzB,KAAK;IAMX,IAAI,eAAe,YAElB;IAEK,gBAAgB,CAAC,MAAM,EAAE,IAAI;IAqB7B,eAAe,CAAC,IAAI,EAAE,gBAAgB;IAMtC,SAAS;IA8Bf;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CA+EhD;AAED,yBAAiB,OAAO,CAAC;IACrB,UAAiB,OAAO;QACpB,OAAO,EAAE,OAAO,CAAC;KACpB;IAED,UAAiB,MAAM;QACnB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/C;CACJ"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/building/project.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAoB,MAAM,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAKnC,OAAO,EAAe,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE1D,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AAED,qBAAa,OAAO;;IAChB,GAAG,EAAE,OAAO,CAAC;gBAID,MAAM,GAAE,OAAO,GAAG,MAAY;IAcpC,WAAW,CAAC,MAAM,EAAE,MAAM;IAK1B,UAAU,CAAC,MAAM,EAAE,MAAM;IA2BzB,KAAK;IAMX,IAAI,eAAe,YAElB;IAEK,gBAAgB,CAAC,MAAM,EAAE,IAAI;IAqB7B,eAAe,CAAC,IAAI,EAAE,gBAAgB;IAMtC,SAAS;IA8Bf;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CA+EhD;AAED,yBAAiB,OAAO,CAAC;IACrB,UAAiB,OAAO;QACpB,OAAO,EAAE,OAAO,CAAC;KACpB;IAED,UAAiB,MAAM;QACnB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/C;CACJ"}
@@ -4,9 +4,9 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { build as esbuild } from "esbuild";
7
- import { cp, mkdir, readFile, rm, symlink, writeFile } from "fs/promises";
8
- import { platform } from "os";
9
- import { dirname, join } from "path";
7
+ import { cp, mkdir, readFile, rm, symlink, writeFile } from "node:fs/promises";
8
+ import { platform } from "node:os";
9
+ import { dirname, join } from "node:path";
10
10
  import { ignoreError } from "../util/errors.js";
11
11
  import { CONFIG_PATH, Package } from "../util/package.js";
12
12
  const BUILD_INFO_LOCATION = "build/info.json";
@@ -183,4 +183,4 @@ export {
183
183
  COMPILED_CONFIG_PATH,
184
184
  Project
185
185
  };
186
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3Byb2plY3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgSGFzaCB9IGZyb20gXCJjcnlwdG9cIjtcbmltcG9ydCB7IGJ1aWxkIGFzIGVzYnVpbGQsIEZvcm1hdCB9IGZyb20gXCJlc2J1aWxkXCI7XG5pbXBvcnQgeyBjcCwgbWtkaXIsIHJlYWRGaWxlLCBybSwgc3ltbGluaywgd3JpdGVGaWxlIH0gZnJvbSBcImZzL3Byb21pc2VzXCI7XG5pbXBvcnQgeyBwbGF0Zm9ybSB9IGZyb20gXCJvc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBpZ25vcmVFcnJvciB9IGZyb20gXCIuLi91dGlsL2Vycm9ycy5qc1wiO1xuaW1wb3J0IHsgQ09ORklHX1BBVEgsIFBhY2thZ2UgfSBmcm9tIFwiLi4vdXRpbC9wYWNrYWdlLmpzXCI7XG5cbmV4cG9ydCBjb25zdCBCVUlMRF9JTkZPX0xPQ0FUSU9OID0gXCJidWlsZC9pbmZvLmpzb25cIjtcbmV4cG9ydCBjb25zdCBDT01QSUxFRF9DT05GSUdfUEFUSCA9IFwiYnVpbGQvYnVpbGQuY29uZmlnLmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRJbmZvcm1hdGlvbiB7XG4gICAgLyoqXG4gICAgICogVGltZSBvZiBsYXN0IGJ1aWxkLiAgQ29tcGFyZWQgdG8gc291cmNlIGZpbGVzIHRvIGRldGVybWluZSB3aGV0aGVyIGJ1aWxkIGlzIGRpcnR5LlxuICAgICAqL1xuICAgIHRpbWVzdGFtcD86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEFQSSBzaWduYXR1cmUuICBVc2VkIGJ5IGRlcGVuZGVudHMgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhleSBuZWVkIHRvIHJlYnVpbGQgYWZ0ZXIgd2UgZG8uXG4gICAgICovXG4gICAgYXBpU2hhPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQVBJIHNpZ25hdHVyZSBvZiBlYWNoIGRlcGVuZGVuY3kuICBDb21wYXJlZCB0byBhcGlTaGEgb2YgZWFjaCBkZXBlbmRlbmN5IGR1cmluZyBkaXJ0eSBkZXRlY3Rpb24uXG4gICAgICovXG4gICAgZGVwZW5kZW5jeUFwaVNoYXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG5leHBvcnQgY2xhc3MgUHJvamVjdCB7XG4gICAgcGtnOiBQYWNrYWdlO1xuICAgICNjb25maWc/OiBQcm9qZWN0LkNvbmZpZztcbiAgICAjY29uZmlndXJlZD86IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3Rvcihzb3VyY2U6IFBhY2thZ2UgfCBzdHJpbmcgPSBcIi5cIikge1xuICAgICAgICBpZiAodHlwZW9mIHNvdXJjZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgdGhpcy5wa2cgPSBuZXcgUGFja2FnZSh7IHBhdGg6IHNvdXJjZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGtnID0gc291cmNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnBrZy5oYXNTcmMpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICBgRm91bmQgcGFja2FnZSAke3RoaXMucGtnLmpzb24ubmFtZX0gYnV0IHNyYyBkaXJlY3RvcnkgaXMgbm90IHByZXNlbnQgb3Igbm90IHJlZmVyZW5jZWQgaW4gdHNjb25maWcuanNvbmAsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgYnVpbGRTb3VyY2UoZm9ybWF0OiBGb3JtYXQpIHtcbiAgICAgICAgYXdhaXQgdGhpcy4jYnVpbGQoZm9ybWF0LCBcInNyY1wiLCBgZGlzdC8ke2Zvcm1hdH1gKTtcbiAgICAgICAgYXdhaXQgdGhpcy4jY29uZmlndXJlRm9ybWF0KFwiZGlzdFwiLCBmb3JtYXQsIHRydWUpO1xuICAgIH1cblxuICAgIGFzeW5jIGJ1aWxkVGVzdHMoZm9ybWF0OiBGb3JtYXQpIHtcbiAgICAgICAgaWYgKHRoaXMucGtnLmhhc0RpcmVjdG9yeShcInRlc3RcIikpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuI2J1aWxkKGZvcm1hdCwgXCJ0ZXN0XCIsIGBidWlsZC8ke2Zvcm1hdH0vdGVzdGApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc3JjID0gYGRpc3QvJHtmb3JtYXR9YDtcbiAgICAgICAgY29uc3QgZGVzdCA9IGBidWlsZC8ke2Zvcm1hdH0vc3JjYDtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZGVzdFBhdGggPSB0aGlzLnBrZy5yZXNvbHZlKGRlc3QpO1xuICAgICAgICAgICAgYXdhaXQgbWtkaXIoZGlybmFtZShkZXN0UGF0aCksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgICAgICAgYXdhaXQgaWdub3JlRXJyb3IoXCJFRVhJU1RcIiwgYXN5bmMgKCkgPT4gYXdhaXQgc3ltbGluayh0aGlzLnBrZy5yZXNvbHZlKHNyYyksIGRlc3RQYXRoKSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmICgoZSBhcyBhbnkpLmNvZGUgPT09IFwiRVBFUk1cIiAmJiBwbGF0Zm9ybSgpID09PSBcIndpbjMyXCIpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiBkZXZlbG9wZXIgbW9kZSBpcyBub3QgZW5hYmxlZCwgd2UgY2FuJ3QgY3JlYXRlIGEgc3ltbGlua1xuICAgICAgICAgICAgICAgIC8vIG9uIFdpbmRvd3MuICBDb3B5IGluc3RlYWRcbiAgICAgICAgICAgICAgICBhd2FpdCBjcCh0aGlzLnBrZy5yZXNvbHZlKHNyYyksIHRoaXMucGtnLnJlc29sdmUoZGVzdCksIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjdXJzaXZlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBmb3JjZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhd2FpdCB0aGlzLiNjb25maWd1cmVGb3JtYXQoXCJidWlsZFwiLCBmb3JtYXQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBhc3luYyBjbGVhbigpIHtcbiAgICAgICAgZm9yIChjb25zdCBkaXIgb2YgW1wiYnVpbGRcIiwgXCJkaXN0XCJdKSB7XG4gICAgICAgICAgICBhd2FpdCBybSh0aGlzLnBrZy5yZXNvbHZlKGRpciksIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBoYXNEZWNsYXJhdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBrZy5oYXNEaXJlY3RvcnkoXCJidWlsZC90eXBlc1wiKTtcbiAgICB9XG5cbiAgICBhc3luYyBoYXNoRGVjbGFyYXRpb25zKGFwaVNoYTogSGFzaCkge1xuICAgICAgICBpZiAoIXRoaXMucGtnLmlzTGlicmFyeSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHBhdGg7XG4gICAgICAgIGlmICh0aGlzLnBrZy5zdXBwb3J0c0VzbSkge1xuICAgICAgICAgICAgcGF0aCA9IFwiZXNtXCI7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5wa2cuc3VwcG9ydHNDanMpIHtcbiAgICAgICAgICAgIHBhdGggPSBcImNqc1wiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVjbGFyYXRpb25zID0gKGF3YWl0IHRoaXMucGtnLmdsb2IoYGRpc3QvJHtwYXRofS8qKi8qLmQue3RzLG10cyxjdHN9YCkpLnNvcnQoKTtcbiAgICAgICAgZm9yIChjb25zdCBmaWxlIG9mIGRlY2xhcmF0aW9ucykge1xuICAgICAgICAgICAgYXBpU2hhLnVwZGF0ZShmaWxlKTtcbiAgICAgICAgICAgIGFwaVNoYS51cGRhdGUoYXdhaXQgcmVhZEZpbGUoZmlsZSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgcmVjb3JkQnVpbGRJbmZvKGluZm86IEJ1aWxkSW5mb3JtYXRpb24pIHtcbiAgICAgICAgYXdhaXQgbWtkaXIodGhpcy5wa2cucmVzb2x2ZShcImJ1aWxkXCIpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgaW5mby50aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgIGF3YWl0IHdyaXRlRmlsZSh0aGlzLnBrZy5yZXNvbHZlKEJVSUxEX0lORk9fTE9DQVRJT04pLCBKU09OLnN0cmluZ2lmeShpbmZvLCB1bmRlZmluZWQsIDQpKTtcbiAgICB9XG5cbiAgICBhc3luYyBjb25maWd1cmUoKSB7XG4gICAgICAgIGlmICh0aGlzLiNjb25maWd1cmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy4jY29uZmlnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLnBrZy5oYXNDb25maWcpIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbmZpZ1BhdGggPSB0aGlzLnBrZy5yZXNvbHZlKENPTkZJR19QQVRIKTtcbiAgICAgICAgY29uc3Qgb3V0ZmlsZSA9IHRoaXMucGtnLnJlc29sdmUoQ09NUElMRURfQ09ORklHX1BBVEgpLnJlcGxhY2VBbGwoXCJcXFxcXCIsIFwiL1wiKTtcblxuICAgICAgICBhd2FpdCBlc2J1aWxkKHtcbiAgICAgICAgICAgIGVudHJ5UG9pbnRzOiBbY29uZmlnUGF0aF0sXG4gICAgICAgICAgICBvdXRmaWxlLFxuICAgICAgICAgICAgc291cmNlbWFwOiB0cnVlLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLiNjb25maWcgPSAoYXdhaXQgaW1wb3J0KGBmaWxlOi8vJHtvdXRmaWxlfWApKSBhcyBQcm9qZWN0LkNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy4jY29uZmlndXJlZCA9IHRydWU7XG5cbiAgICAgICAgaWYgKHRoaXMuI2NvbmZpZz8uc3RhcnR1cCkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy4jY29uZmlnPy5zdGFydHVwKHtcbiAgICAgICAgICAgICAgICBwcm9qZWN0OiB0aGlzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy4jY29uZmlnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcHkgZmlsZXMgaW50byBkaXN0IGZvciBzdXBwb3J0ZWQgZm9ybWF0cy5cbiAgICAgKi9cbiAgICBhc3luYyBjb3B5VG9EaXN0KHNvdXJjZTogc3RyaW5nLCBkZXN0OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZm9ybWF0cyA9IEFycmF5PHN0cmluZz4oKTtcbiAgICAgICAgaWYgKHRoaXMucGtnLnN1cHBvcnRzRXNtKSB7XG4gICAgICAgICAgICBmb3JtYXRzLnB1c2goXCJlc21cIik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucGtnLnN1cHBvcnRzQ2pzKSB7XG4gICAgICAgICAgICBmb3JtYXRzLnB1c2goXCJjanNcIik7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBmb3JtYXQgb2YgZm9ybWF0cykge1xuICAgICAgICAgICAgYXdhaXQgY3AodGhpcy5wa2cucmVzb2x2ZShzb3VyY2UpLCB0aGlzLnBrZy5yZXNvbHZlKGpvaW4oXCJkaXN0XCIsIGZvcm1hdCwgZGVzdCkpLCB7XG4gICAgICAgICAgICAgICAgcmVjdXJzaXZlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGZvcmNlOiB0cnVlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyAjYnVpbGQoZm9ybWF0OiBGb3JtYXQsIGluZGlyOiBzdHJpbmcsIG91dGRpcjogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGVudHJ5UG9pbnRzID0gYXdhaXQgdGhpcy4jdGFyZ2V0c09mKGluZGlyLCBvdXRkaXIsIFwidHNcIiwgXCJqc1wiKTtcblxuICAgICAgICBjb25zdCBjb25maWdQYXRoID0gdGhpcy5wa2cucmVzb2x2ZShDT05GSUdfUEFUSCk7XG4gICAgICAgIGZvciAoY29uc3QgZW50cnkgb2YgZW50cnlQb2ludHMpIHtcbiAgICAgICAgICAgIGlmIChlbnRyeS5pbiA9PT0gY29uZmlnUGF0aCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZW50cnkub3V0ID0gZW50cnkub3V0LnJlcGxhY2UoL1xcLltqdF1zJC8sIFwiXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgYXdhaXQgZXNidWlsZCh7XG4gICAgICAgICAgICBlbnRyeVBvaW50cyxcbiAgICAgICAgICAgIG91dGRpcjogdGhpcy5wa2cucGF0aCxcbiAgICAgICAgICAgIGZvcm1hdCxcbiAgICAgICAgICAgIHNvdXJjZW1hcDogdHJ1ZSxcbiAgICAgICAgICAgIHNvdXJjZXNDb250ZW50OiBmYWxzZSxcbiAgICAgICAgICAgIGFic1dvcmtpbmdEaXI6IGRpcm5hbWUodGhpcy5wa2cucmVzb2x2ZShpbmRpcikpLFxuXG4gICAgICAgICAgICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSB0byBkb3dubGV2ZWwgXCJ1c2luZ1wiXG4gICAgICAgICAgICB0YXJnZXQ6IFwiZXMyMDIyXCIsXG5cbiAgICAgICAgICAgIGxvZ092ZXJyaWRlOiB7XG4gICAgICAgICAgICAgICAgXCJkaXJlY3QtZXZhbFwiOiBcInNpbGVudFwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiBhd2FpdCB0aGlzLiN0YXJnZXRzT2YoaW5kaXIsIG91dGRpciwgXCJjanNcIiwgXCJtanNcIiwgXCJkLmN0c1wiLCBcImQubXRzXCIpKSB7XG4gICAgICAgICAgICBhd2FpdCBjcChlbnRyeS5pbiwgZW50cnkub3V0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jICNjb25maWd1cmVGb3JtYXQoZGlyOiBzdHJpbmcsIGZvcm1hdDogRm9ybWF0LCBpc0Rpc3Q6IGJvb2xlYW4pIHtcbiAgICAgICAgLy8gQnVpbGQgaW1wb3J0IG1hcFxuICAgICAgICBsZXQgeyBpbXBvcnRzIH0gPSB0aGlzLnBrZy5qc29uO1xuICAgICAgICBpZiAoaXNEaXN0ICYmIHR5cGVvZiBpbXBvcnRzID09PSBcIm9iamVjdFwiKSB7XG4gICAgICAgICAgICBpbXBvcnRzID0geyAuLi5pbXBvcnRzIH07XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBpbXBvcnRzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBpbXBvcnRzW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgICAgICBpbXBvcnRzW2tleV0gPSB2YWx1ZS5yZXBsYWNlKC9eXFwuXFwvc3JjXFwvLywgXCIuL1wiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBXcml0ZSBwYWNrYWdlLmpzb25cbiAgICAgICAgY29uc3QgcGF0aCA9IHRoaXMucGtnLnJlc29sdmUoYCR7ZGlyfS8ke2Zvcm1hdH0vcGFja2FnZS5qc29uYCk7XG4gICAgICAgIGNvbnN0IGpzb246IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge1xuICAgICAgICAgICAgdHlwZTogZm9ybWF0ID09PSBcImNqc1wiID8gXCJjb21tb25qc1wiIDogXCJtb2R1bGVcIixcbiAgICAgICAgICAgIGltcG9ydHMsXG4gICAgICAgIH07XG4gICAgICAgIGF3YWl0IHdyaXRlRmlsZShwYXRoLCBKU09OLnN0cmluZ2lmeShqc29uLCB1bmRlZmluZWQsIDQpKTtcbiAgICB9XG5cbiAgICBhc3luYyAjdGFyZ2V0c09mKGluZGlyOiBzdHJpbmcsIG91dGRpcjogc3RyaW5nLCAuLi5leHRlbnNpb25zOiBzdHJpbmdbXSkge1xuICAgICAgICBjb25zdCBpbnB1dFByZWZpeExlbmd0aCA9IHRoaXMucGtnLnJlc29sdmUoaW5kaXIpLmxlbmd0aCArIDE7XG4gICAgICAgIG91dGRpciA9IHRoaXMucGtnLnJlc29sdmUob3V0ZGlyKS5yZXBsYWNlKC9cXFxcL2csIFwiL1wiKTtcblxuICAgICAgICByZXR1cm4gKGF3YWl0IHRoaXMucGtnLmdsb2IoZXh0ZW5zaW9ucy5tYXAoZXh0ID0+IGAke2luZGlyfS8qKi8qLiR7ZXh0fWApKSkubWFwKGZpbGUgPT4gKHtcbiAgICAgICAgICAgIGluOiBmaWxlLFxuICAgICAgICAgICAgb3V0OiBgJHtvdXRkaXJ9LyR7ZmlsZS5zbGljZShpbnB1dFByZWZpeExlbmd0aCl9YCxcbiAgICAgICAgfSkpO1xuICAgIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQcm9qZWN0IHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHQge1xuICAgICAgICBwcm9qZWN0OiBQcm9qZWN0O1xuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnIHtcbiAgICAgICAgc3RhcnR1cD86IChjb250ZXh0OiBDb250ZXh0KSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgICAgICBiZWZvcmU/OiAoY29udGV4dDogQ29udGV4dCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgICAgICAgYWZ0ZXI/OiAoY29udGV4dDogQ29udGV4dCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0EsU0FBUyxTQUFTLGVBQXVCO0FBQ3pDLFNBQVMsSUFBSSxPQUFPLFVBQVUsSUFBSSxTQUFTLGlCQUFp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
186
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3Byb2plY3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgYnVpbGQgYXMgZXNidWlsZCwgRm9ybWF0IH0gZnJvbSBcImVzYnVpbGRcIjtcbmltcG9ydCB7IEhhc2ggfSBmcm9tIFwibm9kZTpjcnlwdG9cIjtcbmltcG9ydCB7IGNwLCBta2RpciwgcmVhZEZpbGUsIHJtLCBzeW1saW5rLCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgcGxhdGZvcm0gfSBmcm9tIFwibm9kZTpvc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IGlnbm9yZUVycm9yIH0gZnJvbSBcIi4uL3V0aWwvZXJyb3JzLmpzXCI7XG5pbXBvcnQgeyBDT05GSUdfUEFUSCwgUGFja2FnZSB9IGZyb20gXCIuLi91dGlsL3BhY2thZ2UuanNcIjtcblxuZXhwb3J0IGNvbnN0IEJVSUxEX0lORk9fTE9DQVRJT04gPSBcImJ1aWxkL2luZm8uanNvblwiO1xuZXhwb3J0IGNvbnN0IENPTVBJTEVEX0NPTkZJR19QQVRIID0gXCJidWlsZC9idWlsZC5jb25maWcuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZEluZm9ybWF0aW9uIHtcbiAgICAvKipcbiAgICAgKiBUaW1lIG9mIGxhc3QgYnVpbGQuICBDb21wYXJlZCB0byBzb3VyY2UgZmlsZXMgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgYnVpbGQgaXMgZGlydHkuXG4gICAgICovXG4gICAgdGltZXN0YW1wPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQVBJIHNpZ25hdHVyZS4gIFVzZWQgYnkgZGVwZW5kZW50cyB0byBkZXRlcm1pbmUgd2hldGhlciB0aGV5IG5lZWQgdG8gcmVidWlsZCBhZnRlciB3ZSBkby5cbiAgICAgKi9cbiAgICBhcGlTaGE/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBBUEkgc2lnbmF0dXJlIG9mIGVhY2ggZGVwZW5kZW5jeS4gIENvbXBhcmVkIHRvIGFwaVNoYSBvZiBlYWNoIGRlcGVuZGVuY3kgZHVyaW5nIGRpcnR5IGRldGVjdGlvbi5cbiAgICAgKi9cbiAgICBkZXBlbmRlbmN5QXBpU2hhcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9qZWN0IHtcbiAgICBwa2c6IFBhY2thZ2U7XG4gICAgI2NvbmZpZz86IFByb2plY3QuQ29uZmlnO1xuICAgICNjb25maWd1cmVkPzogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHNvdXJjZTogUGFja2FnZSB8IHN0cmluZyA9IFwiLlwiKSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc291cmNlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICB0aGlzLnBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogc291cmNlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wa2cgPSBzb3VyY2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMucGtnLmhhc1NyYykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgIGBGb3VuZCBwYWNrYWdlICR7dGhpcy5wa2cuanNvbi5uYW1lfSBidXQgc3JjIGRpcmVjdG9yeSBpcyBub3QgcHJlc2VudCBvciBub3QgcmVmZXJlbmNlZCBpbiB0c2NvbmZpZy5qc29uYCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyBidWlsZFNvdXJjZShmb3JtYXQ6IEZvcm1hdCkge1xuICAgICAgICBhd2FpdCB0aGlzLiNidWlsZChmb3JtYXQsIFwic3JjXCIsIGBkaXN0LyR7Zm9ybWF0fWApO1xuICAgICAgICBhd2FpdCB0aGlzLiNjb25maWd1cmVGb3JtYXQoXCJkaXN0XCIsIGZvcm1hdCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgYXN5bmMgYnVpbGRUZXN0cyhmb3JtYXQ6IEZvcm1hdCkge1xuICAgICAgICBpZiAodGhpcy5wa2cuaGFzRGlyZWN0b3J5KFwidGVzdFwiKSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy4jYnVpbGQoZm9ybWF0LCBcInRlc3RcIiwgYGJ1aWxkLyR7Zm9ybWF0fS90ZXN0YCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzcmMgPSBgZGlzdC8ke2Zvcm1hdH1gO1xuICAgICAgICBjb25zdCBkZXN0ID0gYGJ1aWxkLyR7Zm9ybWF0fS9zcmNgO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBkZXN0UGF0aCA9IHRoaXMucGtnLnJlc29sdmUoZGVzdCk7XG4gICAgICAgICAgICBhd2FpdCBta2RpcihkaXJuYW1lKGRlc3RQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgICAgICAgICBhd2FpdCBpZ25vcmVFcnJvcihcIkVFWElTVFwiLCBhc3luYyAoKSA9PiBhd2FpdCBzeW1saW5rKHRoaXMucGtnLnJlc29sdmUoc3JjKSwgZGVzdFBhdGgpKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKChlIGFzIGFueSkuY29kZSA9PT0gXCJFUEVSTVwiICYmIHBsYXRmb3JtKCkgPT09IFwid2luMzJcIikge1xuICAgICAgICAgICAgICAgIC8vIElmIGRldmVsb3BlciBtb2RlIGlzIG5vdCBlbmFibGVkLCB3ZSBjYW4ndCBjcmVhdGUgYSBzeW1saW5rXG4gICAgICAgICAgICAgICAgLy8gb24gV2luZG93cy4gIENvcHkgaW5zdGVhZFxuICAgICAgICAgICAgICAgIGF3YWl0IGNwKHRoaXMucGtnLnJlc29sdmUoc3JjKSwgdGhpcy5wa2cucmVzb2x2ZShkZXN0KSwge1xuICAgICAgICAgICAgICAgICAgICByZWN1cnNpdmU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGZvcmNlOiB0cnVlLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMuI2NvbmZpZ3VyZUZvcm1hdChcImJ1aWxkXCIsIGZvcm1hdCwgZmFsc2UpO1xuICAgIH1cblxuICAgIGFzeW5jIGNsZWFuKCkge1xuICAgICAgICBmb3IgKGNvbnN0IGRpciBvZiBbXCJidWlsZFwiLCBcImRpc3RcIl0pIHtcbiAgICAgICAgICAgIGF3YWl0IHJtKHRoaXMucGtnLnJlc29sdmUoZGlyKSwgeyByZWN1cnNpdmU6IHRydWUsIGZvcmNlOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGhhc0RlY2xhcmF0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGtnLmhhc0RpcmVjdG9yeShcImJ1aWxkL3R5cGVzXCIpO1xuICAgIH1cblxuICAgIGFzeW5jIGhhc2hEZWNsYXJhdGlvbnMoYXBpU2hhOiBIYXNoKSB7XG4gICAgICAgIGlmICghdGhpcy5wa2cuaXNMaWJyYXJ5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgcGF0aDtcbiAgICAgICAgaWYgKHRoaXMucGtnLnN1cHBvcnRzRXNtKSB7XG4gICAgICAgICAgICBwYXRoID0gXCJlc21cIjtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnBrZy5zdXBwb3J0c0Nqcykge1xuICAgICAgICAgICAgcGF0aCA9IFwiY2pzXCI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkZWNsYXJhdGlvbnMgPSAoYXdhaXQgdGhpcy5wa2cuZ2xvYihgZGlzdC8ke3BhdGh9LyoqLyouZC57dHMsbXRzLGN0c31gKSkuc29ydCgpO1xuICAgICAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZGVjbGFyYXRpb25zKSB7XG4gICAgICAgICAgICBhcGlTaGEudXBkYXRlKGZpbGUpO1xuICAgICAgICAgICAgYXBpU2hhLnVwZGF0ZShhd2FpdCByZWFkRmlsZShmaWxlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyByZWNvcmRCdWlsZEluZm8oaW5mbzogQnVpbGRJbmZvcm1hdGlvbikge1xuICAgICAgICBhd2FpdCBta2Rpcih0aGlzLnBrZy5yZXNvbHZlKFwiYnVpbGRcIiksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgICBpbmZvLnRpbWVzdGFtcCA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlKHRoaXMucGtnLnJlc29sdmUoQlVJTERfSU5GT19MT0NBVElPTiksIEpTT04uc3RyaW5naWZ5KGluZm8sIHVuZGVmaW5lZCwgNCkpO1xuICAgIH1cblxuICAgIGFzeW5jIGNvbmZpZ3VyZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuI2NvbmZpZ3VyZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLiNjb25maWc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMucGtnLmhhc0NvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY29uZmlnUGF0aCA9IHRoaXMucGtnLnJlc29sdmUoQ09ORklHX1BBVEgpO1xuICAgICAgICBjb25zdCBvdXRmaWxlID0gdGhpcy5wa2cucmVzb2x2ZShDT01QSUxFRF9DT05GSUdfUEFUSCkucmVwbGFjZUFsbChcIlxcXFxcIiwgXCIvXCIpO1xuXG4gICAgICAgIGF3YWl0IGVzYnVpbGQoe1xuICAgICAgICAgICAgZW50cnlQb2ludHM6IFtjb25maWdQYXRoXSxcbiAgICAgICAgICAgIG91dGZpbGUsXG4gICAgICAgICAgICBzb3VyY2VtYXA6IHRydWUsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuI2NvbmZpZyA9IChhd2FpdCBpbXBvcnQoYGZpbGU6Ly8ke291dGZpbGV9YCkpIGFzIFByb2plY3QuQ29uZmlnIHwgdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLiNjb25maWd1cmVkID0gdHJ1ZTtcblxuICAgICAgICBpZiAodGhpcy4jY29uZmlnPy5zdGFydHVwKSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLiNjb25maWc/LnN0YXJ0dXAoe1xuICAgICAgICAgICAgICAgIHByb2plY3Q6IHRoaXMsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLiNjb25maWc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29weSBmaWxlcyBpbnRvIGRpc3QgZm9yIHN1cHBvcnRlZCBmb3JtYXRzLlxuICAgICAqL1xuICAgIGFzeW5jIGNvcHlUb0Rpc3Qoc291cmNlOiBzdHJpbmcsIGRlc3Q6IHN0cmluZykge1xuICAgICAgICBjb25zdCBmb3JtYXRzID0gQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBpZiAodGhpcy5wa2cuc3VwcG9ydHNFc20pIHtcbiAgICAgICAgICAgIGZvcm1hdHMucHVzaChcImVzbVwiKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wa2cuc3VwcG9ydHNDanMpIHtcbiAgICAgICAgICAgIGZvcm1hdHMucHVzaChcImNqc1wiKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IGZvcm1hdCBvZiBmb3JtYXRzKSB7XG4gICAgICAgICAgICBhd2FpdCBjcCh0aGlzLnBrZy5yZXNvbHZlKHNvdXJjZSksIHRoaXMucGtnLnJlc29sdmUoam9pbihcImRpc3RcIiwgZm9ybWF0LCBkZXN0KSksIHtcbiAgICAgICAgICAgICAgICByZWN1cnNpdmU6IHRydWUsXG4gICAgICAgICAgICAgICAgZm9yY2U6IHRydWUsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jICNidWlsZChmb3JtYXQ6IEZvcm1hdCwgaW5kaXI6IHN0cmluZywgb3V0ZGlyOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgZW50cnlQb2ludHMgPSBhd2FpdCB0aGlzLiN0YXJnZXRzT2YoaW5kaXIsIG91dGRpciwgXCJ0c1wiLCBcImpzXCIpO1xuXG4gICAgICAgIGNvbnN0IGNvbmZpZ1BhdGggPSB0aGlzLnBrZy5yZXNvbHZlKENPTkZJR19QQVRIKTtcbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiBlbnRyeVBvaW50cykge1xuICAgICAgICAgICAgaWYgKGVudHJ5LmluID09PSBjb25maWdQYXRoKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbnRyeS5vdXQgPSBlbnRyeS5vdXQucmVwbGFjZSgvXFwuW2p0XXMkLywgXCJcIik7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCBlc2J1aWxkKHtcbiAgICAgICAgICAgIGVudHJ5UG9pbnRzLFxuICAgICAgICAgICAgb3V0ZGlyOiB0aGlzLnBrZy5wYXRoLFxuICAgICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgICAgc291cmNlbWFwOiB0cnVlLFxuICAgICAgICAgICAgc291cmNlc0NvbnRlbnQ6IGZhbHNlLFxuICAgICAgICAgICAgYWJzV29ya2luZ0RpcjogZGlybmFtZSh0aGlzLnBrZy5yZXNvbHZlKGluZGlyKSksXG5cbiAgICAgICAgICAgIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IHRvIGRvd25sZXZlbCBcInVzaW5nXCJcbiAgICAgICAgICAgIHRhcmdldDogXCJlczIwMjJcIixcblxuICAgICAgICAgICAgbG9nT3ZlcnJpZGU6IHtcbiAgICAgICAgICAgICAgICBcImRpcmVjdC1ldmFsXCI6IFwic2lsZW50XCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGF3YWl0IHRoaXMuI3RhcmdldHNPZihpbmRpciwgb3V0ZGlyLCBcImNqc1wiLCBcIm1qc1wiLCBcImQuY3RzXCIsIFwiZC5tdHNcIikpIHtcbiAgICAgICAgICAgIGF3YWl0IGNwKGVudHJ5LmluLCBlbnRyeS5vdXQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgI2NvbmZpZ3VyZUZvcm1hdChkaXI6IHN0cmluZywgZm9ybWF0OiBGb3JtYXQsIGlzRGlzdDogYm9vbGVhbikge1xuICAgICAgICAvLyBCdWlsZCBpbXBvcnQgbWFwXG4gICAgICAgIGxldCB7IGltcG9ydHMgfSA9IHRoaXMucGtnLmpzb247XG4gICAgICAgIGlmIChpc0Rpc3QgJiYgdHlwZW9mIGltcG9ydHMgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSB7IC4uLmltcG9ydHMgfTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGltcG9ydHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGltcG9ydHNba2V5XTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIGltcG9ydHNba2V5XSA9IHZhbHVlLnJlcGxhY2UoL15cXC5cXC9zcmNcXC8vLCBcIi4vXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdyaXRlIHBhY2thZ2UuanNvblxuICAgICAgICBjb25zdCBwYXRoID0gdGhpcy5wa2cucmVzb2x2ZShgJHtkaXJ9LyR7Zm9ybWF0fS9wYWNrYWdlLmpzb25gKTtcbiAgICAgICAgY29uc3QganNvbjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICAgICAgICB0eXBlOiBmb3JtYXQgPT09IFwiY2pzXCIgPyBcImNvbW1vbmpzXCIgOiBcIm1vZHVsZVwiLFxuICAgICAgICAgICAgaW1wb3J0cyxcbiAgICAgICAgfTtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlKHBhdGgsIEpTT04uc3RyaW5naWZ5KGpzb24sIHVuZGVmaW5lZCwgNCkpO1xuICAgIH1cblxuICAgIGFzeW5jICN0YXJnZXRzT2YoaW5kaXI6IHN0cmluZywgb3V0ZGlyOiBzdHJpbmcsIC4uLmV4dGVuc2lvbnM6IHN0cmluZ1tdKSB7XG4gICAgICAgIGNvbnN0IGlucHV0UHJlZml4TGVuZ3RoID0gdGhpcy5wa2cucmVzb2x2ZShpbmRpcikubGVuZ3RoICsgMTtcbiAgICAgICAgb3V0ZGlyID0gdGhpcy5wa2cucmVzb2x2ZShvdXRkaXIpLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpO1xuXG4gICAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5wa2cuZ2xvYihleHRlbnNpb25zLm1hcChleHQgPT4gYCR7aW5kaXJ9LyoqLyouJHtleHR9YCkpKS5tYXAoZmlsZSA9PiAoe1xuICAgICAgICAgICAgaW46IGZpbGUsXG4gICAgICAgICAgICBvdXQ6IGAke291dGRpcn0vJHtmaWxlLnNsaWNlKGlucHV0UHJlZml4TGVuZ3RoKX1gLFxuICAgICAgICB9KSk7XG4gICAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFByb2plY3Qge1xuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ29udGV4dCB7XG4gICAgICAgIHByb2plY3Q6IFByb2plY3Q7XG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDb25maWcge1xuICAgICAgICBzdGFydHVwPzogKGNvbnRleHQ6IENvbnRleHQpID0+IFByb21pc2U8dm9pZD47XG4gICAgICAgIGJlZm9yZT86IChjb250ZXh0OiBDb250ZXh0KSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgICAgICBhZnRlcj86IChjb250ZXh0OiBDb250ZXh0KSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFNBQVMsZUFBdUI7QUFFekMsU0FBUyxJQUFJLE9BQU8s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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/building/project.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { relative, resolve } from "path";
6
+ import { relative, resolve } from "node:path";
7
7
  async function syncAllTsconfigs(graph) {
8
8
  const workspace = graph.nodes[0].pkg.workspace;
9
9
  const rootTsconfig = await workspace.readJson("tsconfig.json");
@@ -43,4 +43,4 @@ export {
43
43
  syncAllTsconfigs,
44
44
  syncPackageTsconfigs
45
45
  };
46
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3RzY29uZmlnLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IHJlbGF0aXZlLCByZXNvbHZlIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IEdyYXBoIH0gZnJvbSBcIi4vZ3JhcGguanNcIjtcblxuLyoqXG4gKiBVbmZvcnR1bmF0ZWx5IHR5cGVzY3JpcHQncyBcInByb2plY3QgcmVmZXJlbmNlc1wiIGFyZSByZWR1bmRhbnQgd2l0aCBwYWNrYWdlLmpzb24gZGVwZW5kZW5jaWVzLiAgV2UgZG9uJ3QgdXNlIHRoZW0gZm9yXG4gKiBidWlsZCBidXQgdGhlcmUgYXJlIHN0aWxsIHNvbWUgYWR2YW50YWdlcyB0byBtYWludGFpbmluZyB0aGVtIHNvIHdlIGp1c3QgZW5zdXJlIHRoZXkncmUgaW4gc3luYyBkdXJpbmcgd29ya3NwYWNlXG4gKiBidWlsZHMuXG4gKlxuICogT25lIGRpc2N1c3Npb24gb24gdGhlIHRvcGljOiBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvaXNzdWVzLzI1Mzc2XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzeW5jQWxsVHNjb25maWdzKGdyYXBoOiBHcmFwaCkge1xuICAgIGNvbnN0IHdvcmtzcGFjZSA9IGdyYXBoLm5vZGVzWzBdLnBrZy53b3Jrc3BhY2U7XG4gICAgY29uc3Qgcm9vdFRzY29uZmlnID0gYXdhaXQgd29ya3NwYWNlLnJlYWRKc29uKFwidHNjb25maWcuanNvblwiKTtcblxuICAgIGNvbnN0IG9yaWdpbmFsUmVmZXJlbmNlcyA9IHJvb3RUc2NvbmZpZy5yZWZlcmVuY2VzO1xuICAgIHJvb3RUc2NvbmZpZy5yZWZlcmVuY2VzID0gW107XG5cbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgZ3JhcGgubm9kZXMpIHtcbiAgICAgICAgYXdhaXQgc3luY1BhY2thZ2VUc2NvbmZpZ3MoZ3JhcGgsIG5vZGUpO1xuICAgICAgICByb290VHNjb25maWcucmVmZXJlbmNlcy5wdXNoKHsgcGF0aDogd29ya3NwYWNlLnJlbGF0aXZlKG5vZGUucGtnLnBhdGgpLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpIH0pO1xuICAgIH1cblxuICAgIGlmIChyZWZlcmVuY2VzQ2hhbmdlZChvcmlnaW5hbFJlZmVyZW5jZXMsIHJvb3RUc2NvbmZpZy5yZWZlcmVuY2VzKSkge1xuICAgICAgICBhd2FpdCB3b3Jrc3BhY2Uud3JpdGVKc29uKFwidHNjb25maWcuanNvblwiLCByb290VHNjb25maWcpO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gcmVmZXJlbmNlc0NoYW5nZWQob3JpZ2luYWxSZWZlcmVuY2VzOiB1bmtub3duLCBuZXdSZWZlcmVuY2VzOiB1bmtub3duKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG9yaWdpbmFsUmVmZXJlbmNlcykgIT09IEpTT04uc3RyaW5naWZ5KG5ld1JlZmVyZW5jZXMpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc3luY1BhY2thZ2VUc2NvbmZpZ3MoZ3JhcGg6IEdyYXBoLCBub2RlOiBHcmFwaC5Ob2RlKSB7XG4gICAgYXdhaXQgc3luY1N1YnByb2plY3Qobm9kZSwgXCJzcmNcIik7XG4gICAgYXdhaXQgc3luY1N1YnByb2plY3Qobm9kZSwgXCJ0ZXN0XCIsIG5vZGUucGtnLnJlc29sdmUoXCJzcmNcIiksIGdyYXBoLmdldChcIkBtYXR0ZXIvdG9vbHNcIikucGtnLnJlc29sdmUoXCJzcmNcIikpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBzeW5jU3VicHJvamVjdChub2RlOiBHcmFwaC5Ob2RlLCBwYXRoOiBzdHJpbmcsIC4uLmV4dHJhUmVmczogc3RyaW5nW10pIHtcbiAgICBwYXRoID0gbm9kZS5wa2cucmVzb2x2ZShwYXRoKTtcblxuICAgIGNvbnN0IHRzY29uZmlnUGF0aCA9IHJlc29sdmUocGF0aCwgXCJ0c2NvbmZpZy5qc29uXCIpO1xuICAgIGlmICghbm9kZS5wa2cuaGFzRmlsZSh0c2NvbmZpZ1BhdGgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB0c2NvbmZpZyA9IGF3YWl0IG5vZGUucGtnLnJlYWRKc29uKHRzY29uZmlnUGF0aCk7XG5cbiAgICBjb25zdCBkZXBzID0gbm9kZS5kZXBlbmRlbmNpZXMuZmlsdGVyKGRlcCA9PiBkZXAucGtnLmlzTGlicmFyeSkubWFwKGRlcCA9PiBkZXAucGtnLnJlc29sdmUoXCJzcmNcIikpO1xuICAgIC8vLmZpbHRlcihwID0+ICFwLm1hdGNoKC9wYWNrYWdlc1tcXFxcL110b29scy8pKTtcblxuICAgIGNvbnN0IGRlc2lyZWQgPSBbLi4ubmV3IFNldChbLi4uZGVwcywgLi4uZXh0cmFSZWZzXSldO1xuXG4gICAgY29uc3QgbmV3UmVmZXJlbmNlcyA9IGRlc2lyZWRcbiAgICAgICAgLm1hcChyZWYgPT4gKHsgcGF0aDogcmVsYXRpdmUocGF0aCwgcmVmKS5yZXBsYWNlKC9cXFxcL2csIFwiL1wiKSB9KSlcbiAgICAgICAgLnNvcnQoKHJlZjEsIHJlZjIpID0+IHJlZjEucGF0aC5sb2NhbGVDb21wYXJlKHJlZjIucGF0aCkpO1xuXG4gICAgaWYgKHJlZmVyZW5jZXNDaGFuZ2VkKHRzY29uZmlnLnJlZmVyZW5jZXMsIG5ld1JlZmVyZW5jZXMpKSB7XG4gICAgICAgIHRzY29uZmlnLnJlZmVyZW5jZXMgPSBuZXdSZWZlcmVuY2VzO1xuICAgICAgICBhd2FpdCBub2RlLnBrZy53cml0ZUpzb24odHNjb25maWdQYXRoLCB0c2NvbmZpZyk7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsVUFBVSxlQUFlO0FBVWxDLGVBQXNCLGlCQUFpQixPQUFjO0FBQ2pELFFBQU0sWUFBWSxNQUFNLE1BQU0sQ0FBQyxFQUFFLElBQUk7QUFDckMsUUFBTSxlQUFlLE1BQU0sVUFBVSxTQUFTLGVBQWU7QUFFN0QsUUFBTSxxQkFBcUIsYUFBYTtBQUN4QyxlQUFhLGFBQWEsQ0FBQztBQUUzQixhQUFXLFFBQVEsTUFBTSxPQUFPO0FBQzVCLFVBQU0scUJBQXFCLE9BQU8sSUFBSTtBQUN0QyxpQkFBYSxXQUFXLEtBQUssRUFBRSxNQUFNLFVBQVUsU0FBUyxLQUFLLElBQUksSUFBSSxFQUFFLFFBQVEsT0FBTyxHQUFHLEVBQUUsQ0FBQztBQUFBLEVBQ2hHO0FBRUEsTUFBSSxrQkFBa0Isb0JBQW9CLGFBQWEsVUFBVSxHQUFHO0FBQ2hFLFVBQU0sVUFBVSxVQUFVLGlCQUFpQixZQUFZO0FBQUEsRUFDM0Q7QUFDSjtBQUVBLFNBQVMsa0JBQWtCLG9CQUE2QixlQUF3QjtBQUM1RSxTQUFPLEtBQUssVUFBVSxrQkFBa0IsTUFBTSxLQUFLLFVBQVUsYUFBYTtBQUM5RTtBQUVBLGVBQXNCLHFCQUFxQixPQUFjLE1BQWtCO0FBQ3ZFLFFBQU0sZUFBZSxNQUFNLEtBQUs7QUFDaEMsUUFBTSxlQUFlLE1BQU0sUUFBUSxLQUFLLElBQUksUUFBUSxLQUFLLEdBQUcsTUFBTSxJQUFJLGVBQWUsRUFBRSxJQUFJLFFBQVEsS0FBSyxDQUFDO0FBQzdHO0FBRUEsZUFBZSxlQUFlLE1BQWtCLFNBQWlCLFdBQXFCO0FBQ2xGLFNBQU8sS0FBSyxJQUFJLFFBQVEsSUFBSTtBQUU1QixRQUFNLGVBQWUsUUFBUSxNQUFNLGVBQWU7QUFDbEQsTUFBSSxDQUFDLEtBQUssSUFBSSxRQUFRLFlBQVksR0FBRztBQUNqQztBQUFBLEVBQ0o7QUFFQSxRQUFNLFdBQVcsTUFBTSxLQUFLLElBQUksU0FBUyxZQUFZO0FBRXJELFFBQU0sT0FBTyxLQUFLLGFBQWEsT0FBTyxTQUFPLElBQUksSUFBSSxTQUFTLEVBQUUsSUFBSSxTQUFPLElBQUksSUFBSSxRQUFRLEtBQUssQ0FBQztBQUdqRyxRQUFNLFVBQVUsQ0FBQyxHQUFHLG9CQUFJLElBQUksQ0FBQyxHQUFHLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztBQUVwRCxRQUFNLGdCQUFnQixRQUNqQixJQUFJLFVBQVEsRUFBRSxNQUFNLFNBQVMsTUFBTSxHQUFHLEVBQUUsUUFBUSxPQUFPLEdBQUcsRUFBRSxFQUFFLEVBQzlELEtBQUssQ0FBQyxNQUFNLFNBQVMsS0FBSyxLQUFLLGNBQWMsS0FBSyxJQUFJLENBQUM7QUFFNUQsTUFBSSxrQkFBa0IsU0FBUyxZQUFZLGFBQWEsR0FBRztBQUN2RCxhQUFTLGFBQWE7QUFDdEIsVUFBTSxLQUFLLElBQUksVUFBVSxjQUFjLFFBQVE7QUFBQSxFQUNuRDtBQUNKOyIsCiAgIm5hbWVzIjogW10KfQo=
46
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3RzY29uZmlnLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IHJlbGF0aXZlLCByZXNvbHZlIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHsgR3JhcGggfSBmcm9tIFwiLi9ncmFwaC5qc1wiO1xuXG4vKipcbiAqIFVuZm9ydHVuYXRlbHkgdHlwZXNjcmlwdCdzIFwicHJvamVjdCByZWZlcmVuY2VzXCIgYXJlIHJlZHVuZGFudCB3aXRoIHBhY2thZ2UuanNvbiBkZXBlbmRlbmNpZXMuICBXZSBkb24ndCB1c2UgdGhlbSBmb3JcbiAqIGJ1aWxkIGJ1dCB0aGVyZSBhcmUgc3RpbGwgc29tZSBhZHZhbnRhZ2VzIHRvIG1haW50YWluaW5nIHRoZW0gc28gd2UganVzdCBlbnN1cmUgdGhleSdyZSBpbiBzeW5jIGR1cmluZyB3b3Jrc3BhY2VcbiAqIGJ1aWxkcy5cbiAqXG4gKiBPbmUgZGlzY3Vzc2lvbiBvbiB0aGUgdG9waWM6IGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvMjUzNzZcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHN5bmNBbGxUc2NvbmZpZ3MoZ3JhcGg6IEdyYXBoKSB7XG4gICAgY29uc3Qgd29ya3NwYWNlID0gZ3JhcGgubm9kZXNbMF0ucGtnLndvcmtzcGFjZTtcbiAgICBjb25zdCByb290VHNjb25maWcgPSBhd2FpdCB3b3Jrc3BhY2UucmVhZEpzb24oXCJ0c2NvbmZpZy5qc29uXCIpO1xuXG4gICAgY29uc3Qgb3JpZ2luYWxSZWZlcmVuY2VzID0gcm9vdFRzY29uZmlnLnJlZmVyZW5jZXM7XG4gICAgcm9vdFRzY29uZmlnLnJlZmVyZW5jZXMgPSBbXTtcblxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBncmFwaC5ub2Rlcykge1xuICAgICAgICBhd2FpdCBzeW5jUGFja2FnZVRzY29uZmlncyhncmFwaCwgbm9kZSk7XG4gICAgICAgIHJvb3RUc2NvbmZpZy5yZWZlcmVuY2VzLnB1c2goeyBwYXRoOiB3b3Jrc3BhY2UucmVsYXRpdmUobm9kZS5wa2cucGF0aCkucmVwbGFjZSgvXFxcXC9nLCBcIi9cIikgfSk7XG4gICAgfVxuXG4gICAgaWYgKHJlZmVyZW5jZXNDaGFuZ2VkKG9yaWdpbmFsUmVmZXJlbmNlcywgcm9vdFRzY29uZmlnLnJlZmVyZW5jZXMpKSB7XG4gICAgICAgIGF3YWl0IHdvcmtzcGFjZS53cml0ZUpzb24oXCJ0c2NvbmZpZy5qc29uXCIsIHJvb3RUc2NvbmZpZyk7XG4gICAgfVxufVxuXG5mdW5jdGlvbiByZWZlcmVuY2VzQ2hhbmdlZChvcmlnaW5hbFJlZmVyZW5jZXM6IHVua25vd24sIG5ld1JlZmVyZW5jZXM6IHVua25vd24pIHtcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkob3JpZ2luYWxSZWZlcmVuY2VzKSAhPT0gSlNPTi5zdHJpbmdpZnkobmV3UmVmZXJlbmNlcyk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzeW5jUGFja2FnZVRzY29uZmlncyhncmFwaDogR3JhcGgsIG5vZGU6IEdyYXBoLk5vZGUpIHtcbiAgICBhd2FpdCBzeW5jU3VicHJvamVjdChub2RlLCBcInNyY1wiKTtcbiAgICBhd2FpdCBzeW5jU3VicHJvamVjdChub2RlLCBcInRlc3RcIiwgbm9kZS5wa2cucmVzb2x2ZShcInNyY1wiKSwgZ3JhcGguZ2V0KFwiQG1hdHRlci90b29sc1wiKS5wa2cucmVzb2x2ZShcInNyY1wiKSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHN5bmNTdWJwcm9qZWN0KG5vZGU6IEdyYXBoLk5vZGUsIHBhdGg6IHN0cmluZywgLi4uZXh0cmFSZWZzOiBzdHJpbmdbXSkge1xuICAgIHBhdGggPSBub2RlLnBrZy5yZXNvbHZlKHBhdGgpO1xuXG4gICAgY29uc3QgdHNjb25maWdQYXRoID0gcmVzb2x2ZShwYXRoLCBcInRzY29uZmlnLmpzb25cIik7XG4gICAgaWYgKCFub2RlLnBrZy5oYXNGaWxlKHRzY29uZmlnUGF0aCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRzY29uZmlnID0gYXdhaXQgbm9kZS5wa2cucmVhZEpzb24odHNjb25maWdQYXRoKTtcblxuICAgIGNvbnN0IGRlcHMgPSBub2RlLmRlcGVuZGVuY2llcy5maWx0ZXIoZGVwID0+IGRlcC5wa2cuaXNMaWJyYXJ5KS5tYXAoZGVwID0+IGRlcC5wa2cucmVzb2x2ZShcInNyY1wiKSk7XG4gICAgLy8uZmlsdGVyKHAgPT4gIXAubWF0Y2goL3BhY2thZ2VzW1xcXFwvXXRvb2xzLykpO1xuXG4gICAgY29uc3QgZGVzaXJlZCA9IFsuLi5uZXcgU2V0KFsuLi5kZXBzLCAuLi5leHRyYVJlZnNdKV07XG5cbiAgICBjb25zdCBuZXdSZWZlcmVuY2VzID0gZGVzaXJlZFxuICAgICAgICAubWFwKHJlZiA9PiAoeyBwYXRoOiByZWxhdGl2ZShwYXRoLCByZWYpLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpIH0pKVxuICAgICAgICAuc29ydCgocmVmMSwgcmVmMikgPT4gcmVmMS5wYXRoLmxvY2FsZUNvbXBhcmUocmVmMi5wYXRoKSk7XG5cbiAgICBpZiAocmVmZXJlbmNlc0NoYW5nZWQodHNjb25maWcucmVmZXJlbmNlcywgbmV3UmVmZXJlbmNlcykpIHtcbiAgICAgICAgdHNjb25maWcucmVmZXJlbmNlcyA9IG5ld1JlZmVyZW5jZXM7XG4gICAgICAgIGF3YWl0IG5vZGUucGtnLndyaXRlSnNvbih0c2NvbmZpZ1BhdGgsIHRzY29uZmlnKTtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxVQUFVLGVBQWU7QUFVbEMsZUFBc0IsaUJBQWlCLE9BQWM7QUFDakQsUUFBTSxZQUFZLE1BQU0sTUFBTSxDQUFDLEVBQUUsSUFBSTtBQUNyQyxRQUFNLGVBQWUsTUFBTSxVQUFVLFNBQVMsZUFBZTtBQUU3RCxRQUFNLHFCQUFxQixhQUFhO0FBQ3hDLGVBQWEsYUFBYSxDQUFDO0FBRTNCLGFBQVcsUUFBUSxNQUFNLE9BQU87QUFDNUIsVUFBTSxxQkFBcUIsT0FBTyxJQUFJO0FBQ3RDLGlCQUFhLFdBQVcsS0FBSyxFQUFFLE1BQU0sVUFBVSxTQUFTLEtBQUssSUFBSSxJQUFJLEVBQUUsUUFBUSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBQUEsRUFDaEc7QUFFQSxNQUFJLGtCQUFrQixvQkFBb0IsYUFBYSxVQUFVLEdBQUc7QUFDaEUsVUFBTSxVQUFVLFVBQVUsaUJBQWlCLFlBQVk7QUFBQSxFQUMzRDtBQUNKO0FBRUEsU0FBUyxrQkFBa0Isb0JBQTZCLGVBQXdCO0FBQzVFLFNBQU8sS0FBSyxVQUFVLGtCQUFrQixNQUFNLEtBQUssVUFBVSxhQUFhO0FBQzlFO0FBRUEsZUFBc0IscUJBQXFCLE9BQWMsTUFBa0I7QUFDdkUsUUFBTSxlQUFlLE1BQU0sS0FBSztBQUNoQyxRQUFNLGVBQWUsTUFBTSxRQUFRLEtBQUssSUFBSSxRQUFRLEtBQUssR0FBRyxNQUFNLElBQUksZUFBZSxFQUFFLElBQUksUUFBUSxLQUFLLENBQUM7QUFDN0c7QUFFQSxlQUFlLGVBQWUsTUFBa0IsU0FBaUIsV0FBcUI7QUFDbEYsU0FBTyxLQUFLLElBQUksUUFBUSxJQUFJO0FBRTVCLFFBQU0sZUFBZSxRQUFRLE1BQU0sZUFBZTtBQUNsRCxNQUFJLENBQUMsS0FBSyxJQUFJLFFBQVEsWUFBWSxHQUFHO0FBQ2pDO0FBQUEsRUFDSjtBQUVBLFFBQU0sV0FBVyxNQUFNLEtBQUssSUFBSSxTQUFTLFlBQVk7QUFFckQsUUFBTSxPQUFPLEtBQUssYUFBYSxPQUFPLFNBQU8sSUFBSSxJQUFJLFNBQVMsRUFBRSxJQUFJLFNBQU8sSUFBSSxJQUFJLFFBQVEsS0FBSyxDQUFDO0FBR2pHLFFBQU0sVUFBVSxDQUFDLEdBQUcsb0JBQUksSUFBSSxDQUFDLEdBQUcsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0FBRXBELFFBQU0sZ0JBQWdCLFFBQ2pCLElBQUksVUFBUSxFQUFFLE1BQU0sU0FBUyxNQUFNLEdBQUcsRUFBRSxRQUFRLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFDOUQsS0FBSyxDQUFDLE1BQU0sU0FBUyxLQUFLLEtBQUssY0FBYyxLQUFLLElBQUksQ0FBQztBQUU1RCxNQUFJLGtCQUFrQixTQUFTLFlBQVksYUFBYSxHQUFHO0FBQ3ZELGFBQVMsYUFBYTtBQUN0QixVQUFNLEtBQUssSUFBSSxVQUFVLGNBQWMsUUFBUTtBQUFBLEVBQ25EO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { dirname } from "path";
6
+ import { dirname } from "node:path";
7
7
  import {
8
8
  createCompilerHost,
9
9
  formatDiagnosticsWithColorAndContext,
@@ -65,4 +65,4 @@ var TypescriptContext;
65
65
  export {
66
66
  TypescriptContext
67
67
  };
68
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvY29udGV4dC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBkaXJuYW1lIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7XG4gICAgY3JlYXRlQ29tcGlsZXJIb3N0LFxuICAgIERpYWdub3N0aWMsXG4gICAgZm9ybWF0RGlhZ25vc3RpY3NXaXRoQ29sb3JBbmRDb250ZXh0LFxuICAgIHBhcnNlSnNvbkNvbmZpZ0ZpbGVDb250ZW50LFxuICAgIHJlYWRDb25maWdGaWxlLFxuICAgIHN5cyxcbn0gZnJvbSBcInR5cGVzY3JpcHRcIjtcbmltcG9ydCB7IFBhY2thZ2UgfSBmcm9tIFwiLi4vLi4vdXRpbC9wYWNrYWdlLmpzXCI7XG5pbXBvcnQgeyBCdWlsZEVycm9yIH0gZnJvbSBcIi4uL2Vycm9yLmpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHlwZXNjcmlwdENvbnRleHQge1xuICAgIGJ1aWxkKHBrZzogUGFja2FnZSwgcGF0aDogc3RyaW5nLCByZWZyZXNoQ2FsbGJhY2s6ICgpID0+IHZvaWQsIGVtaXQ/OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBUeXBlc2NyaXB0Q29udGV4dCB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIGRpYWdub3NlKGRpYWdub3N0aWNzPzogRGlhZ25vc3RpYyB8IERpYWdub3N0aWNbXSkge1xuICAgICAgICBpZiAoZGlhZ25vc3RpY3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRpYWdub3N0aWNzKSkge1xuICAgICAgICAgICAgaWYgKCFkaWFnbm9zdGljcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaWFnbm9zdGljcyA9IFtkaWFnbm9zdGljc107XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBob3N0ID0gY3JlYXRlQ29tcGlsZXJIb3N0KHt9KTtcblxuICAgICAgICBsZXQgZm9ybWF0dGVkID0gZm9ybWF0RGlhZ25vc3RpY3NXaXRoQ29sb3JBbmRDb250ZXh0KGRpYWdub3N0aWNzLCBob3N0KTtcblxuICAgICAgICAvLyBTdHJhbmdlbHkgdGhlcmUgYXJlIG5vdCBuZXdsaW5lcyBiZXR3ZWVuIGVycm9ycyBpbiB0aGlzIG91dHB1dCBsaWtlIHRoZXJlIGlzIHdoZW4geW91IHJ1biB0c2MgZnJvbSB0aGVcbiAgICAgICAgLy8gY29tbWFuZCBsaW5lLiAgVXNlIHRoZSBcImxpZ2h0IGJsdWVcIiBBTlNJIGVzY2FwZSBjb2RlIGFzIGFuIGluamVjdGlvbiBwb2ludCBmb3IgYW4gYWRkaXRpb25hbCBuZXdsaW5lXG4gICAgICAgIC8vXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4XG4gICAgICAgIGZvcm1hdHRlZCA9IGZvcm1hdHRlZC5yZXBsYWNlKC9cXHUwMDFiXFxbOTZtL2csIFwiXFxuXFx1MDAxYls5Nm1cIik7XG5cbiAgICAgICAgdGhyb3cgbmV3IEJ1aWxkRXJyb3IoZm9ybWF0dGVkKTtcbiAgICB9XG5cbiAgICBleHBvcnQgZnVuY3Rpb24gY29tcGlsZXJPcHRpb25zRm9yKHBhdGg6IHN0cmluZywgaWdub3JlRXJyb3JzID0gZmFsc2UpIHtcbiAgICAgICAgY29uc3QgZmlsZSA9IHJlYWRDb25maWdGaWxlKHBhdGgsIHN5cy5yZWFkRmlsZSk7XG4gICAgICAgIGRpYWdub3NlKGZpbGUuZXJyb3IpO1xuICAgICAgICBjb25zdCBjb25maWcgPSBwYXJzZUpzb25Db25maWdGaWxlQ29udGVudChmaWxlLmNvbmZpZywgc3lzLCBkaXJuYW1lKHBhdGgpKTtcbiAgICAgICAgaWYgKCFpZ25vcmVFcnJvcnMpIHtcbiAgICAgICAgICAgIGRpYWdub3NlKGNvbmZpZy5lcnJvcnMpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb25maWcub3B0aW9ucztcbiAgICB9XG5cbiAgICBleHBvcnQgZnVuY3Rpb24gaW5zdHJ1bWVudEhvc3RGb3JTcGlubmVyKGhvc3Q6IHt9LCByZWZyZXNoQ2FsbGJhY2s/OiAoKSA9PiB2b2lkKSB7XG4gICAgICAgIGlmICghcmVmcmVzaENhbGxiYWNrKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGUgcmVmcmVzaCBjYWxsYmFjayBhbGxvd3MgdXMgdG8gbWFrZSBzcGlubmVyIHVwZGF0ZXMgZXZlbiB0aG91Z2ggVFMgaXMgc3luY2hyb25vdXMuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIFRPRE8gLSBhZGQgaW50ZXJjZXB0aW9uIHBvaW50cyBhcyBzcGlubmVyIHN0aWxsIGhhbmdzXG5cbiAgICAgICAgZm9yIChjb25zdCBuYW1lIG9mIFtcInJlYWRGaWxlXCIsIFwid3JpdGVGaWxlXCIsIFwiZ2V0U291cmNlRmlsZVwiXSkge1xuICAgICAgICAgICAgaWYgKCEobmFtZSBpbiBob3N0KSkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBmbiA9IChob3N0IGFzIFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+KVtuYW1lXTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZm4gIT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAoaG9zdCBhcyBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPilbbmFtZV0gPSAoLi4uYXJnczogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gZm4uYXBwbHkoaG9zdCwgYXJncyk7XG4gICAgICAgICAgICAgICAgcmVmcmVzaENhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxlQUFlO0FBQ3hCO0FBQUEsRUFDSTtBQUFBLEVBRUE7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNHO0FBRVAsU0FBUyxrQkFBa0I7QUFNcEIsSUFBVTtBQUFBLENBQVYsQ0FBVUEsdUJBQVY7QUFDSSxXQUFTLFNBQVMsYUFBeUM7QUFDOUQsUUFBSSxnQkFBZ0IsUUFBVztBQUMzQjtBQUFBLElBQ0o7QUFDQSxRQUFJLE1BQU0sUUFBUSxXQUFXLEdBQUc7QUFDNUIsVUFBSSxDQUFDLFlBQVksUUFBUTtBQUNyQjtBQUFBLE1BQ0o7QUFBQSxJQUNKLE9BQU87QUFDSCxvQkFBYyxDQUFDLFdBQVc7QUFBQSxJQUM5QjtBQUVBLFVBQU0sT0FBTyxtQkFBbUIsQ0FBQyxDQUFDO0FBRWxDLFFBQUksWUFBWSxxQ0FBcUMsYUFBYSxJQUFJO0FBTXRFLGdCQUFZLFVBQVUsUUFBUSxnQkFBZ0IsWUFBYztBQUU1RCxVQUFNLElBQUksV0FBVyxTQUFTO0FBQUEsRUFDbEM7QUF2Qk8sRUFBQUEsbUJBQVM7QUF5QlQsV0FBUyxtQkFBbUIsTUFBYyxlQUFlLE9BQU87QUFDbkUsVUFBTSxPQUFPLGVBQWUsTUFBTSxJQUFJLFFBQVE7QUFDOUMsYUFBUyxLQUFLLEtBQUs7QUFDbkIsVUFBTSxTQUFTLDJCQUEyQixLQUFLLFFBQVEsS0FBSyxRQUFRLElBQUksQ0FBQztBQUN6RSxRQUFJLENBQUMsY0FBYztBQUNmLGVBQVMsT0FBTyxNQUFNO0FBQUEsSUFDMUI7QUFDQSxXQUFPLE9BQU87QUFBQSxFQUNsQjtBQVJPLEVBQUFBLG1CQUFTO0FBVVQsV0FBUyx5QkFBeUIsTUFBVSxpQkFBOEI7QUFDN0UsUUFBSSxDQUFDLGlCQUFpQjtBQUNsQjtBQUFBLElBQ0o7QUFNQSxlQUFXLFFBQVEsQ0FBQyxZQUFZLGFBQWEsZUFBZSxHQUFHO0FBQzNELFVBQUksRUFBRSxRQUFRLE9BQU87QUFDakI7QUFBQSxNQUNKO0FBRUEsWUFBTSxLQUFNLEtBQXVDLElBQUk7QUFDdkQsVUFBSSxPQUFPLE9BQU8sWUFBWTtBQUMxQjtBQUFBLE1BQ0o7QUFFQSxNQUFDLEtBQXVDLElBQUksSUFBSSxJQUFJLFNBQWM7QUFDOUQsY0FBTSxTQUFTLEdBQUcsTUFBTSxNQUFNLElBQUk7QUFDbEMsd0JBQWdCO0FBQ2hCLGVBQU87QUFBQSxNQUNYO0FBQUEsSUFDSjtBQUFBLEVBQ0o7QUF6Qk8sRUFBQUEsbUJBQVM7QUFBQSxHQXBDSDsiLAogICJuYW1lcyI6IFsiVHlwZXNjcmlwdENvbnRleHQiXQp9Cg==
68
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvY29udGV4dC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBkaXJuYW1lIH0gZnJvbSBcIm5vZGU6cGF0aFwiO1xuaW1wb3J0IHtcbiAgICBjcmVhdGVDb21waWxlckhvc3QsXG4gICAgRGlhZ25vc3RpYyxcbiAgICBmb3JtYXREaWFnbm9zdGljc1dpdGhDb2xvckFuZENvbnRleHQsXG4gICAgcGFyc2VKc29uQ29uZmlnRmlsZUNvbnRlbnQsXG4gICAgcmVhZENvbmZpZ0ZpbGUsXG4gICAgc3lzLFxufSBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuLi8uLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IEJ1aWxkRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3IuanNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBUeXBlc2NyaXB0Q29udGV4dCB7XG4gICAgYnVpbGQocGtnOiBQYWNrYWdlLCBwYXRoOiBzdHJpbmcsIHJlZnJlc2hDYWxsYmFjazogKCkgPT4gdm9pZCwgZW1pdD86IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG5leHBvcnQgbmFtZXNwYWNlIFR5cGVzY3JpcHRDb250ZXh0IHtcbiAgICBleHBvcnQgZnVuY3Rpb24gZGlhZ25vc2UoZGlhZ25vc3RpY3M/OiBEaWFnbm9zdGljIHwgRGlhZ25vc3RpY1tdKSB7XG4gICAgICAgIGlmIChkaWFnbm9zdGljcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGlhZ25vc3RpY3MpKSB7XG4gICAgICAgICAgICBpZiAoIWRpYWdub3N0aWNzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRpYWdub3N0aWNzID0gW2RpYWdub3N0aWNzXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGhvc3QgPSBjcmVhdGVDb21waWxlckhvc3Qoe30pO1xuXG4gICAgICAgIGxldCBmb3JtYXR0ZWQgPSBmb3JtYXREaWFnbm9zdGljc1dpdGhDb2xvckFuZENvbnRleHQoZGlhZ25vc3RpY3MsIGhvc3QpO1xuXG4gICAgICAgIC8vIFN0cmFuZ2VseSB0aGVyZSBhcmUgbm90IG5ld2xpbmVzIGJldHdlZW4gZXJyb3JzIGluIHRoaXMgb3V0cHV0IGxpa2UgdGhlcmUgaXMgd2hlbiB5b3UgcnVuIHRzYyBmcm9tIHRoZVxuICAgICAgICAvLyBjb21tYW5kIGxpbmUuICBVc2UgdGhlIFwibGlnaHQgYmx1ZVwiIEFOU0kgZXNjYXBlIGNvZGUgYXMgYW4gaW5qZWN0aW9uIHBvaW50IGZvciBhbiBhZGRpdGlvbmFsIG5ld2xpbmVcbiAgICAgICAgLy9cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRyb2wtcmVnZXhcbiAgICAgICAgZm9ybWF0dGVkID0gZm9ybWF0dGVkLnJlcGxhY2UoL1xcdTAwMWJcXFs5Nm0vZywgXCJcXG5cXHUwMDFiWzk2bVwiKTtcblxuICAgICAgICB0aHJvdyBuZXcgQnVpbGRFcnJvcihmb3JtYXR0ZWQpO1xuICAgIH1cblxuICAgIGV4cG9ydCBmdW5jdGlvbiBjb21waWxlck9wdGlvbnNGb3IocGF0aDogc3RyaW5nLCBpZ25vcmVFcnJvcnMgPSBmYWxzZSkge1xuICAgICAgICBjb25zdCBmaWxlID0gcmVhZENvbmZpZ0ZpbGUocGF0aCwgc3lzLnJlYWRGaWxlKTtcbiAgICAgICAgZGlhZ25vc2UoZmlsZS5lcnJvcik7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHBhcnNlSnNvbkNvbmZpZ0ZpbGVDb250ZW50KGZpbGUuY29uZmlnLCBzeXMsIGRpcm5hbWUocGF0aCkpO1xuICAgICAgICBpZiAoIWlnbm9yZUVycm9ycykge1xuICAgICAgICAgICAgZGlhZ25vc2UoY29uZmlnLmVycm9ycyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbmZpZy5vcHRpb25zO1xuICAgIH1cblxuICAgIGV4cG9ydCBmdW5jdGlvbiBpbnN0cnVtZW50SG9zdEZvclNwaW5uZXIoaG9zdDoge30sIHJlZnJlc2hDYWxsYmFjaz86ICgpID0+IHZvaWQpIHtcbiAgICAgICAgaWYgKCFyZWZyZXNoQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoZSByZWZyZXNoIGNhbGxiYWNrIGFsbG93cyB1cyB0byBtYWtlIHNwaW5uZXIgdXBkYXRlcyBldmVuIHRob3VnaCBUUyBpcyBzeW5jaHJvbm91cy5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gVE9ETyAtIGFkZCBpbnRlcmNlcHRpb24gcG9pbnRzIGFzIHNwaW5uZXIgc3RpbGwgaGFuZ3NcblxuICAgICAgICBmb3IgKGNvbnN0IG5hbWUgb2YgW1wicmVhZEZpbGVcIiwgXCJ3cml0ZUZpbGVcIiwgXCJnZXRTb3VyY2VGaWxlXCJdKSB7XG4gICAgICAgICAgICBpZiAoIShuYW1lIGluIGhvc3QpKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGZuID0gKGhvc3QgYXMgUmVjb3JkPHN0cmluZywgKCkgPT4gdW5rbm93bj4pW25hbWVdO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBmbiAhPT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIChob3N0IGFzIFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+KVtuYW1lXSA9ICguLi5hcmdzOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBmbi5hcHBseShob3N0LCBhcmdzKTtcbiAgICAgICAgICAgICAgICByZWZyZXNoQ2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLGVBQWU7QUFDeEI7QUFBQSxFQUNJO0FBQUEsRUFFQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0c7QUFFUCxTQUFTLGtCQUFrQjtBQU1wQixJQUFVO0FBQUEsQ0FBVixDQUFVQSx1QkFBVjtBQUNJLFdBQVMsU0FBUyxhQUF5QztBQUM5RCxRQUFJLGdCQUFnQixRQUFXO0FBQzNCO0FBQUEsSUFDSjtBQUNBLFFBQUksTUFBTSxRQUFRLFdBQVcsR0FBRztBQUM1QixVQUFJLENBQUMsWUFBWSxRQUFRO0FBQ3JCO0FBQUEsTUFDSjtBQUFBLElBQ0osT0FBTztBQUNILG9CQUFjLENBQUMsV0FBVztBQUFBLElBQzlCO0FBRUEsVUFBTSxPQUFPLG1CQUFtQixDQUFDLENBQUM7QUFFbEMsUUFBSSxZQUFZLHFDQUFxQyxhQUFhLElBQUk7QUFNdEUsZ0JBQVksVUFBVSxRQUFRLGdCQUFnQixZQUFjO0FBRTVELFVBQU0sSUFBSSxXQUFXLFNBQVM7QUFBQSxFQUNsQztBQXZCTyxFQUFBQSxtQkFBUztBQXlCVCxXQUFTLG1CQUFtQixNQUFjLGVBQWUsT0FBTztBQUNuRSxVQUFNLE9BQU8sZUFBZSxNQUFNLElBQUksUUFBUTtBQUM5QyxhQUFTLEtBQUssS0FBSztBQUNuQixVQUFNLFNBQVMsMkJBQTJCLEtBQUssUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDO0FBQ3pFLFFBQUksQ0FBQyxjQUFjO0FBQ2YsZUFBUyxPQUFPLE1BQU07QUFBQSxJQUMxQjtBQUNBLFdBQU8sT0FBTztBQUFBLEVBQ2xCO0FBUk8sRUFBQUEsbUJBQVM7QUFVVCxXQUFTLHlCQUF5QixNQUFVLGlCQUE4QjtBQUM3RSxRQUFJLENBQUMsaUJBQWlCO0FBQ2xCO0FBQUEsSUFDSjtBQU1BLGVBQVcsUUFBUSxDQUFDLFlBQVksYUFBYSxlQUFlLEdBQUc7QUFDM0QsVUFBSSxFQUFFLFFBQVEsT0FBTztBQUNqQjtBQUFBLE1BQ0o7QUFFQSxZQUFNLEtBQU0sS0FBdUMsSUFBSTtBQUN2RCxVQUFJLE9BQU8sT0FBTyxZQUFZO0FBQzFCO0FBQUEsTUFDSjtBQUVBLE1BQUMsS0FBdUMsSUFBSSxJQUFJLElBQUksU0FBYztBQUM5RCxjQUFNLFNBQVMsR0FBRyxNQUFNLE1BQU0sSUFBSTtBQUNsQyx3QkFBZ0I7QUFDaEIsZUFBTztBQUFBLE1BQ1g7QUFBQSxJQUNKO0FBQUEsRUFDSjtBQXpCTyxFQUFBQSxtQkFBUztBQUFBLEdBcENIOyIsCiAgIm5hbWVzIjogWyJUeXBlc2NyaXB0Q29udGV4dCJdCn0K
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { existsSync } from "fs";
6
+ import { existsSync } from "node:fs";
7
7
  import { createIncrementalCompilerHost, createIncrementalProgram } from "typescript";
8
8
  import { Package } from "../../util/package.js";
9
9
  import { InternalBuildError } from "../error.js";
@@ -96,4 +96,4 @@ function createIncrementalCompilerContext(_workspace, _graph) {
96
96
  export {
97
97
  createIncrementalCompilerContext
98
98
  };
99
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvaW5jcmVtZW50YWwtY29tcGlsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgZXhpc3RzU3luYyB9IGZyb20gXCJmc1wiO1xuaW1wb3J0IHsgQ29tcGlsZXJPcHRpb25zLCBjcmVhdGVJbmNyZW1lbnRhbENvbXBpbGVySG9zdCwgY3JlYXRlSW5jcmVtZW50YWxQcm9ncmFtIH0gZnJvbSBcInR5cGVzY3JpcHRcIjtcbmltcG9ydCB7IFBhY2thZ2UgfSBmcm9tIFwiLi4vLi4vdXRpbC9wYWNrYWdlLmpzXCI7XG5pbXBvcnQgeyBJbnRlcm5hbEJ1aWxkRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3IuanNcIjtcbmltcG9ydCB7IEdyYXBoIH0gZnJvbSBcIi4uL2dyYXBoLmpzXCI7XG5pbXBvcnQgeyBUeXBlc2NyaXB0Q29udGV4dCB9IGZyb20gXCIuL2NvbnRleHQuanNcIjtcblxuLy8gVE9ETyAtIGlmIHdlIGV2ZXIgbW92ZSBiYWNrIHRvIHRoaXMgd2UgbmVlZCB0byBjb3B5IHR5cGUgZmlsZXMgd2hpY2ggd2FzIHByZXZpb3VzbHkgaGFuZGxlZCBzZXBhcmF0ZWx5XG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW5jcmVtZW50YWxDb21waWxlckNvbnRleHQoX3dvcmtzcGFjZTogUGFja2FnZSwgX2dyYXBoOiBHcmFwaCB8IHVuZGVmaW5lZCk6IFR5cGVzY3JpcHRDb250ZXh0IHtcbiAgICBjb25zdCBiYXNlT3B0aW9ucyA9IHtcbiAgICAgICAgLi4uVHlwZXNjcmlwdENvbnRleHQuY29tcGlsZXJPcHRpb25zRm9yKFBhY2thZ2UudG9vbHMucmVzb2x2ZShcInRzYy90c2NvbmZpZy5iYXNlLmpzb25cIikpLFxuXG4gICAgICAgIGluY3JlbWVudGFsOiB0cnVlLFxuICAgICAgICBpc29sYXRlZE1vZHVsZXM6IHRydWUsXG4gICAgICAgIHNraXBMaWJDaGVjazogdHJ1ZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHsgYnVpbGQgfTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uIGJ1aWxkKHBrZzogUGFja2FnZSwgcGF0aDogc3RyaW5nLCByZWZyZXNoQ2FsbGJhY2s6ICgpID0+IHZvaWQsIGVtaXQ/OiBib29sZWFuKSB7XG4gICAgICAgIGxldCBvcHRpb25zO1xuICAgICAgICBpZiAoZW1pdCkge1xuICAgICAgICAgICAgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICBvdXREaXI6IHBrZy5yZXNvbHZlKFwiYnVpbGQvdHlwZXNcIiksXG4gICAgICAgICAgICAgICAgZW1pdERlY2xhcmF0aW9uT25seTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBzb3VyY2VNYXA6IHRydWUsXG4gICAgICAgICAgICAgICAgZGVjbGFyYXRpb25NYXA6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICBub0VtaXQ6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgIC4uLmJhc2VPcHRpb25zLFxuICAgICAgICAgICAgdHNCdWlsZEluZm9GaWxlOiBwa2cucmVzb2x2ZShcImJ1aWxkL3RzYnVpbGRpbmZvXCIpLFxuICAgICAgICAgICAgcm9vdERpcjogcGtnLnBhdGgsXG4gICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICB9O1xuXG4gICAgICAgIGRlbGV0ZSBvcHRpb25zLmNvbXBvc2l0ZTtcblxuICAgICAgICBpZiAocGtnLmhhc1NyYykge1xuICAgICAgICAgICAgbG9hZENvbmZpZ3VyZWRPcHRpb25zKHBrZy5yZXNvbHZlKFwic3JjL3RzY29uZmlnLmpzb25cIiksIG9wdGlvbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBrZy5oYXNUZXN0cykge1xuICAgICAgICAgICAgbG9hZENvbmZpZ3VyZWRPcHRpb25zKHBrZy5yZXNvbHZlKFwic3JjL3RzY29uZmlnLmpzb25cIiksIG9wdGlvbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaG9zdCA9IGNyZWF0ZUluY3JlbWVudGFsQ29tcGlsZXJIb3N0KG9wdGlvbnMpO1xuXG4gICAgICAgIFR5cGVzY3JpcHRDb250ZXh0Lmluc3RydW1lbnRIb3N0Rm9yU3Bpbm5lcihob3N0LCByZWZyZXNoQ2FsbGJhY2spO1xuICAgICAgICBjb25zdCBzb3VyY2VzID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgICAgIGlmIChwYXRoID09PSBcInNyY1wiKSB7XG4gICAgICAgICAgICBpZiAocGtnLmhhc1NyYykge1xuICAgICAgICAgICAgICAgIHNvdXJjZXMucHVzaCguLi4oYXdhaXQgcGtnLmdsb2IoXCJzcmMvKiovKi50c1wiKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKHBhdGggPT09IFwidGVzdFwiKSB7XG4gICAgICAgICAgICBpZiAocGtnLmhhc1Rlc3RzKSB7XG4gICAgICAgICAgICAgICAgc291cmNlcy5wdXNoKC4uLihhd2FpdCBwa2cuZ2xvYihcInRlc3QvKiovKi50c1wiKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsQnVpbGRFcnJvcihgVW5zdXBwb3J0ZWQgYnVpbGQgcGF0aCBcIiR7cGF0aH1cImApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcHJvZ3JhbSA9IGNyZWF0ZUluY3JlbWVudGFsUHJvZ3JhbSh7XG4gICAgICAgICAgICByb290TmFtZXM6IHNvdXJjZXMsXG4gICAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgICAgaG9zdCxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvMzE4NDlcbiAgICAgICAgY29uc3QgZGlhZ25vc3RpY3MgPSBbXG4gICAgICAgICAgICAuLi5wcm9ncmFtLmdldENvbmZpZ0ZpbGVQYXJzaW5nRGlhZ25vc3RpY3MoKSxcbiAgICAgICAgICAgIC4uLnByb2dyYW0uZ2V0U3ludGFjdGljRGlhZ25vc3RpY3MoKSxcbiAgICAgICAgICAgIC4uLnByb2dyYW0uZ2V0T3B0aW9uc0RpYWdub3N0aWNzKCksXG4gICAgICAgICAgICAuLi5wcm9ncmFtLmdldFNlbWFudGljRGlhZ25vc3RpY3MoKSxcbiAgICAgICAgXTtcblxuICAgICAgICBpZiAoIW9wdGlvbnMubm9FbWl0KSB7XG4gICAgICAgICAgICBkaWFnbm9zdGljcy5wdXNoKC4uLnByb2dyYW0uZW1pdCgpLmRpYWdub3N0aWNzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIFR5cGVzY3JpcHRDb250ZXh0LmRpYWdub3NlKGRpYWdub3N0aWNzKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcyB3ZSBsYXJnZWx5IGNvbmZpZ3VyZSBiYXNlZCBvbiBjb252ZW50aW9uLCB3ZSBtb3N0bHkgaWdub3JlIHRzY29uZmlnLmpzb24gZmlsZXMgaW4gcHJvamVjdCBkaXJlY3Rvcmllcy4gIFRoZVxuICAgICAqIGxpbWl0ZWQgbnVtYmVyIG9mIHByb2plY3Qtc3BlY2lmaWMgb3B0aW9ucyB3ZSBhbGxvdyBsb2FkIGhlcmUuXG4gICAgICovXG4gICAgZnVuY3Rpb24gbG9hZENvbmZpZ3VyZWRPcHRpb25zKHBhdGg6IHN0cmluZywgaW50bzogQ29tcGlsZXJPcHRpb25zKSB7XG4gICAgICAgIGlmICghZXhpc3RzU3luYyhwYXRoKSkge1xuICAgICAgICAgICAgLy8gUGFja2FnZSB0c2NvbmZpZ3MgYXJlIG9wdGlvbmFsXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvcHRpb25zID0gVHlwZXNjcmlwdENvbnRleHQuY29tcGlsZXJPcHRpb25zRm9yKHBhdGgpO1xuXG4gICAgICAgIGRlbGV0ZSBvcHRpb25zPy5jb21wb3NpdGU7XG5cbiAgICAgICAgY29uc3QgdHlwZXMgPSBvcHRpb25zPy50eXBlcztcbiAgICAgICAgaWYgKHR5cGVzKSB7XG4gICAgICAgICAgICBpZiAoaW50by50eXBlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lcmdlZCA9IG5ldyBTZXQoaW50by50eXBlcyk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCB0eXBlIG9mIHR5cGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1lcmdlZC5hZGQodHlwZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGludG8udHlwZXMgPSBbLi4ubWVyZ2VkXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaW50by50eXBlcyA9IHR5cGVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsa0JBQWtCO0FBQzNCLFNBQTBCLCtCQUErQixnQ0FBZ0M7QUFDekYsU0FBUyxlQUFlO0FBQ3hCLFNBQVMsMEJBQTBCO0FBRW5DLFNBQVMseUJBQXlCO0FBRzNCLFNBQVMsaUNBQWlDLFlBQXFCLFFBQThDO0FBQ2hILFFBQU0sY0FBYztBQUFBLElBQ2hCLEdBQUcsa0JBQWtCLG1CQUFtQixRQUFRLE1BQU0sUUFBUSx3QkFBd0IsQ0FBQztBQUFBLElBRXZGLGFBQWE7QUFBQSxJQUNiLGlCQUFpQjtBQUFBLElBQ2pCLGNBQWM7QUFBQSxFQUNsQjtBQUVBLFNBQU8sRUFBRSxNQUFNO0FBRWYsaUJBQWUsTUFBTSxLQUFjLE1BQWMsaUJBQTZCLE1BQWdCO0FBQzFGLFFBQUk7QUFDSixRQUFJLE1BQU07QUFDTixnQkFBVTtBQUFBLFFBQ04sUUFBUSxJQUFJLFFBQVEsYUFBYTtBQUFBLFFBQ2pDLHFCQUFxQjtBQUFBLFFBQ3JCLFdBQVc7QUFBQSxRQUNYLGdCQUFnQjtBQUFBLE1BQ3BCO0FBQUEsSUFDSixPQUFPO0FBQ0gsZ0JBQVU7QUFBQSxRQUNOLFFBQVE7QUFBQSxNQUNaO0FBQUEsSUFDSjtBQUVBLGNBQVU7QUFBQSxNQUNOLEdBQUc7QUFBQSxNQUNILGlCQUFpQixJQUFJLFFBQVEsbUJBQW1CO0FBQUEsTUFDaEQsU0FBUyxJQUFJO0FBQUEsTUFDYixHQUFHO0FBQUEsSUFDUDtBQUVBLFdBQU8sUUFBUTtBQUVmLFFBQUksSUFBSSxRQUFRO0FBQ1osNEJBQXNCLElBQUksUUFBUSxtQkFBbUIsR0FBRyxPQUFPO0FBQUEsSUFDbkU7QUFFQSxRQUFJLElBQUksVUFBVTtBQUNkLDRCQUFzQixJQUFJLFFBQVEsbUJBQW1CLEdBQUcsT0FBTztBQUFBLElBQ25FO0FBRUEsVUFBTSxPQUFPLDhCQUE4QixPQUFPO0FBRWxELHNCQUFrQix5QkFBeUIsTUFBTSxlQUFlO0FBQ2hFLFVBQU0sVUFBVSxNQUFjO0FBRTlCLFFBQUksU0FBUyxPQUFPO0FBQ2hCLFVBQUksSUFBSSxRQUFRO0FBQ1osZ0JBQVEsS0FBSyxHQUFJLE1BQU0sSUFBSSxLQUFLLGFBQWEsQ0FBRTtBQUFBLE1BQ25EO0FBQUEsSUFDSixXQUFXLFNBQVMsUUFBUTtBQUN4QixVQUFJLElBQUksVUFBVTtBQUNkLGdCQUFRLEtBQUssR0FBSSxNQUFNLElBQUksS0FBSyxjQUFjLENBQUU7QUFBQSxNQUNwRDtBQUFBLElBQ0osT0FBTztBQUNILFlBQU0sSUFBSSxtQkFBbUIsMkJBQTJCLElBQUksR0FBRztBQUFBLElBQ25FO0FBRUEsVUFBTSxVQUFVLHlCQUF5QjtBQUFBLE1BQ3JDLFdBQVc7QUFBQSxNQUNYO0FBQUEsTUFDQTtBQUFBLElBQ0osQ0FBQztBQUdELFVBQU0sY0FBYztBQUFBLE1BQ2hCLEdBQUcsUUFBUSxnQ0FBZ0M7QUFBQSxNQUMzQyxHQUFHLFFBQVEsd0JBQXdCO0FBQUEsTUFDbkMsR0FBRyxRQUFRLHNCQUFzQjtBQUFBLE1BQ2pDLEdBQUcsUUFBUSx1QkFBdUI7QUFBQSxJQUN0QztBQUVBLFFBQUksQ0FBQyxRQUFRLFFBQVE7QUFDakIsa0JBQVksS0FBSyxHQUFHLFFBQVEsS0FBSyxFQUFFLFdBQVc7QUFBQSxJQUNsRDtBQUVBLHNCQUFrQixTQUFTLFdBQVc7QUFBQSxFQUMxQztBQU1BLFdBQVMsc0JBQXNCLE1BQWMsTUFBdUI7QUFDaEUsUUFBSSxDQUFDLFdBQVcsSUFBSSxHQUFHO0FBRW5CO0FBQUEsSUFDSjtBQUVBLFVBQU0sVUFBVSxrQkFBa0IsbUJBQW1CLElBQUk7QUFFekQsV0FBTyxTQUFTO0FBRWhCLFVBQU0sUUFBUSxTQUFTO0FBQ3ZCLFFBQUksT0FBTztBQUNQLFVBQUksS0FBSyxPQUFPO0FBQ1osY0FBTSxTQUFTLElBQUksSUFBSSxLQUFLLEtBQUs7QUFDakMsbUJBQVcsUUFBUSxPQUFPO0FBQ3RCLGlCQUFPLElBQUksSUFBSTtBQUFBLFFBQ25CO0FBQ0EsYUFBSyxRQUFRLENBQUMsR0FBRyxNQUFNO0FBQUEsTUFDM0IsT0FBTztBQUNILGFBQUssUUFBUTtBQUFBLE1BQ2pCO0FBQUEsSUFDSjtBQUFBLEVBQ0o7QUFDSjsiLAogICJuYW1lcyI6IFtdCn0K
99
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvaW5jcmVtZW50YWwtY29tcGlsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgZXhpc3RzU3luYyB9IGZyb20gXCJub2RlOmZzXCI7XG5pbXBvcnQgeyBDb21waWxlck9wdGlvbnMsIGNyZWF0ZUluY3JlbWVudGFsQ29tcGlsZXJIb3N0LCBjcmVhdGVJbmNyZW1lbnRhbFByb2dyYW0gfSBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuLi8uLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IEludGVybmFsQnVpbGRFcnJvciB9IGZyb20gXCIuLi9lcnJvci5qc1wiO1xuaW1wb3J0IHsgR3JhcGggfSBmcm9tIFwiLi4vZ3JhcGguanNcIjtcbmltcG9ydCB7IFR5cGVzY3JpcHRDb250ZXh0IH0gZnJvbSBcIi4vY29udGV4dC5qc1wiO1xuXG4vLyBUT0RPIC0gaWYgd2UgZXZlciBtb3ZlIGJhY2sgdG8gdGhpcyB3ZSBuZWVkIHRvIGNvcHkgdHlwZSBmaWxlcyB3aGljaCB3YXMgcHJldmlvdXNseSBoYW5kbGVkIHNlcGFyYXRlbHlcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVJbmNyZW1lbnRhbENvbXBpbGVyQ29udGV4dChfd29ya3NwYWNlOiBQYWNrYWdlLCBfZ3JhcGg6IEdyYXBoIHwgdW5kZWZpbmVkKTogVHlwZXNjcmlwdENvbnRleHQge1xuICAgIGNvbnN0IGJhc2VPcHRpb25zID0ge1xuICAgICAgICAuLi5UeXBlc2NyaXB0Q29udGV4dC5jb21waWxlck9wdGlvbnNGb3IoUGFja2FnZS50b29scy5yZXNvbHZlKFwidHNjL3RzY29uZmlnLmJhc2UuanNvblwiKSksXG5cbiAgICAgICAgaW5jcmVtZW50YWw6IHRydWUsXG4gICAgICAgIGlzb2xhdGVkTW9kdWxlczogdHJ1ZSxcbiAgICAgICAgc2tpcExpYkNoZWNrOiB0cnVlLFxuICAgIH07XG5cbiAgICByZXR1cm4geyBidWlsZCB9O1xuXG4gICAgYXN5bmMgZnVuY3Rpb24gYnVpbGQocGtnOiBQYWNrYWdlLCBwYXRoOiBzdHJpbmcsIHJlZnJlc2hDYWxsYmFjazogKCkgPT4gdm9pZCwgZW1pdD86IGJvb2xlYW4pIHtcbiAgICAgICAgbGV0IG9wdGlvbnM7XG4gICAgICAgIGlmIChlbWl0KSB7XG4gICAgICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIG91dERpcjogcGtnLnJlc29sdmUoXCJidWlsZC90eXBlc1wiKSxcbiAgICAgICAgICAgICAgICBlbWl0RGVjbGFyYXRpb25Pbmx5OiB0cnVlLFxuICAgICAgICAgICAgICAgIHNvdXJjZU1hcDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBkZWNsYXJhdGlvbk1hcDogdHJ1ZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIG5vRW1pdDogdHJ1ZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgLi4uYmFzZU9wdGlvbnMsXG4gICAgICAgICAgICB0c0J1aWxkSW5mb0ZpbGU6IHBrZy5yZXNvbHZlKFwiYnVpbGQvdHNidWlsZGluZm9cIiksXG4gICAgICAgICAgICByb290RGlyOiBwa2cucGF0aCxcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIH07XG5cbiAgICAgICAgZGVsZXRlIG9wdGlvbnMuY29tcG9zaXRlO1xuXG4gICAgICAgIGlmIChwa2cuaGFzU3JjKSB7XG4gICAgICAgICAgICBsb2FkQ29uZmlndXJlZE9wdGlvbnMocGtnLnJlc29sdmUoXCJzcmMvdHNjb25maWcuanNvblwiKSwgb3B0aW9ucyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocGtnLmhhc1Rlc3RzKSB7XG4gICAgICAgICAgICBsb2FkQ29uZmlndXJlZE9wdGlvbnMocGtnLnJlc29sdmUoXCJzcmMvdHNjb25maWcuanNvblwiKSwgb3B0aW9ucyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBob3N0ID0gY3JlYXRlSW5jcmVtZW50YWxDb21waWxlckhvc3Qob3B0aW9ucyk7XG5cbiAgICAgICAgVHlwZXNjcmlwdENvbnRleHQuaW5zdHJ1bWVudEhvc3RGb3JTcGlubmVyKGhvc3QsIHJlZnJlc2hDYWxsYmFjayk7XG4gICAgICAgIGNvbnN0IHNvdXJjZXMgPSBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICAgICAgaWYgKHBhdGggPT09IFwic3JjXCIpIHtcbiAgICAgICAgICAgIGlmIChwa2cuaGFzU3JjKSB7XG4gICAgICAgICAgICAgICAgc291cmNlcy5wdXNoKC4uLihhd2FpdCBwa2cuZ2xvYihcInNyYy8qKi8qLnRzXCIpKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAocGF0aCA9PT0gXCJ0ZXN0XCIpIHtcbiAgICAgICAgICAgIGlmIChwa2cuaGFzVGVzdHMpIHtcbiAgICAgICAgICAgICAgICBzb3VyY2VzLnB1c2goLi4uKGF3YWl0IHBrZy5nbG9iKFwidGVzdC8qKi8qLnRzXCIpKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxCdWlsZEVycm9yKGBVbnN1cHBvcnRlZCBidWlsZCBwYXRoIFwiJHtwYXRofVwiYCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcm9ncmFtID0gY3JlYXRlSW5jcmVtZW50YWxQcm9ncmFtKHtcbiAgICAgICAgICAgIHJvb3ROYW1lczogc291cmNlcyxcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBob3N0LFxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL21pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy8zMTg0OVxuICAgICAgICBjb25zdCBkaWFnbm9zdGljcyA9IFtcbiAgICAgICAgICAgIC4uLnByb2dyYW0uZ2V0Q29uZmlnRmlsZVBhcnNpbmdEaWFnbm9zdGljcygpLFxuICAgICAgICAgICAgLi4ucHJvZ3JhbS5nZXRTeW50YWN0aWNEaWFnbm9zdGljcygpLFxuICAgICAgICAgICAgLi4ucHJvZ3JhbS5nZXRPcHRpb25zRGlhZ25vc3RpY3MoKSxcbiAgICAgICAgICAgIC4uLnByb2dyYW0uZ2V0U2VtYW50aWNEaWFnbm9zdGljcygpLFxuICAgICAgICBdO1xuXG4gICAgICAgIGlmICghb3B0aW9ucy5ub0VtaXQpIHtcbiAgICAgICAgICAgIGRpYWdub3N0aWNzLnB1c2goLi4ucHJvZ3JhbS5lbWl0KCkuZGlhZ25vc3RpY3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgVHlwZXNjcmlwdENvbnRleHQuZGlhZ25vc2UoZGlhZ25vc3RpY3MpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFzIHdlIGxhcmdlbHkgY29uZmlndXJlIGJhc2VkIG9uIGNvbnZlbnRpb24sIHdlIG1vc3RseSBpZ25vcmUgdHNjb25maWcuanNvbiBmaWxlcyBpbiBwcm9qZWN0IGRpcmVjdG9yaWVzLiAgVGhlXG4gICAgICogbGltaXRlZCBudW1iZXIgb2YgcHJvamVjdC1zcGVjaWZpYyBvcHRpb25zIHdlIGFsbG93IGxvYWQgaGVyZS5cbiAgICAgKi9cbiAgICBmdW5jdGlvbiBsb2FkQ29uZmlndXJlZE9wdGlvbnMocGF0aDogc3RyaW5nLCBpbnRvOiBDb21waWxlck9wdGlvbnMpIHtcbiAgICAgICAgaWYgKCFleGlzdHNTeW5jKHBhdGgpKSB7XG4gICAgICAgICAgICAvLyBQYWNrYWdlIHRzY29uZmlncyBhcmUgb3B0aW9uYWxcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBUeXBlc2NyaXB0Q29udGV4dC5jb21waWxlck9wdGlvbnNGb3IocGF0aCk7XG5cbiAgICAgICAgZGVsZXRlIG9wdGlvbnM/LmNvbXBvc2l0ZTtcblxuICAgICAgICBjb25zdCB0eXBlcyA9IG9wdGlvbnM/LnR5cGVzO1xuICAgICAgICBpZiAodHlwZXMpIHtcbiAgICAgICAgICAgIGlmIChpbnRvLnR5cGVzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVyZ2VkID0gbmV3IFNldChpbnRvLnR5cGVzKTtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHR5cGUgb2YgdHlwZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWVyZ2VkLmFkZCh0eXBlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW50by50eXBlcyA9IFsuLi5tZXJnZWRdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpbnRvLnR5cGVzID0gdHlwZXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxrQkFBa0I7QUFDM0IsU0FBMEIsK0JBQStCLGdDQUFnQztBQUN6RixTQUFTLGVBQWU7QUFDeEIsU0FBUywwQkFBMEI7QUFFbkMsU0FBUyx5QkFBeUI7QUFHM0IsU0FBUyxpQ0FBaUMsWUFBcUIsUUFBOEM7QUFDaEgsUUFBTSxjQUFjO0FBQUEsSUFDaEIsR0FBRyxrQkFBa0IsbUJBQW1CLFFBQVEsTUFBTSxRQUFRLHdCQUF3QixDQUFDO0FBQUEsSUFFdkYsYUFBYTtBQUFBLElBQ2IsaUJBQWlCO0FBQUEsSUFDakIsY0FBYztBQUFBLEVBQ2xCO0FBRUEsU0FBTyxFQUFFLE1BQU07QUFFZixpQkFBZSxNQUFNLEtBQWMsTUFBYyxpQkFBNkIsTUFBZ0I7QUFDMUYsUUFBSTtBQUNKLFFBQUksTUFBTTtBQUNOLGdCQUFVO0FBQUEsUUFDTixRQUFRLElBQUksUUFBUSxhQUFhO0FBQUEsUUFDakMscUJBQXFCO0FBQUEsUUFDckIsV0FBVztBQUFBLFFBQ1gsZ0JBQWdCO0FBQUEsTUFDcEI7QUFBQSxJQUNKLE9BQU87QUFDSCxnQkFBVTtBQUFBLFFBQ04sUUFBUTtBQUFBLE1BQ1o7QUFBQSxJQUNKO0FBRUEsY0FBVTtBQUFBLE1BQ04sR0FBRztBQUFBLE1BQ0gsaUJBQWlCLElBQUksUUFBUSxtQkFBbUI7QUFBQSxNQUNoRCxTQUFTLElBQUk7QUFBQSxNQUNiLEdBQUc7QUFBQSxJQUNQO0FBRUEsV0FBTyxRQUFRO0FBRWYsUUFBSSxJQUFJLFFBQVE7QUFDWiw0QkFBc0IsSUFBSSxRQUFRLG1CQUFtQixHQUFHLE9BQU87QUFBQSxJQUNuRTtBQUVBLFFBQUksSUFBSSxVQUFVO0FBQ2QsNEJBQXNCLElBQUksUUFBUSxtQkFBbUIsR0FBRyxPQUFPO0FBQUEsSUFDbkU7QUFFQSxVQUFNLE9BQU8sOEJBQThCLE9BQU87QUFFbEQsc0JBQWtCLHlCQUF5QixNQUFNLGVBQWU7QUFDaEUsVUFBTSxVQUFVLE1BQWM7QUFFOUIsUUFBSSxTQUFTLE9BQU87QUFDaEIsVUFBSSxJQUFJLFFBQVE7QUFDWixnQkFBUSxLQUFLLEdBQUksTUFBTSxJQUFJLEtBQUssYUFBYSxDQUFFO0FBQUEsTUFDbkQ7QUFBQSxJQUNKLFdBQVcsU0FBUyxRQUFRO0FBQ3hCLFVBQUksSUFBSSxVQUFVO0FBQ2QsZ0JBQVEsS0FBSyxHQUFJLE1BQU0sSUFBSSxLQUFLLGNBQWMsQ0FBRTtBQUFBLE1BQ3BEO0FBQUEsSUFDSixPQUFPO0FBQ0gsWUFBTSxJQUFJLG1CQUFtQiwyQkFBMkIsSUFBSSxHQUFHO0FBQUEsSUFDbkU7QUFFQSxVQUFNLFVBQVUseUJBQXlCO0FBQUEsTUFDckMsV0FBVztBQUFBLE1BQ1g7QUFBQSxNQUNBO0FBQUEsSUFDSixDQUFDO0FBR0QsVUFBTSxjQUFjO0FBQUEsTUFDaEIsR0FBRyxRQUFRLGdDQUFnQztBQUFBLE1BQzNDLEdBQUcsUUFBUSx3QkFBd0I7QUFBQSxNQUNuQyxHQUFHLFFBQVEsc0JBQXNCO0FBQUEsTUFDakMsR0FBRyxRQUFRLHVCQUF1QjtBQUFBLElBQ3RDO0FBRUEsUUFBSSxDQUFDLFFBQVEsUUFBUTtBQUNqQixrQkFBWSxLQUFLLEdBQUcsUUFBUSxLQUFLLEVBQUUsV0FBVztBQUFBLElBQ2xEO0FBRUEsc0JBQWtCLFNBQVMsV0FBVztBQUFBLEVBQzFDO0FBTUEsV0FBUyxzQkFBc0IsTUFBYyxNQUF1QjtBQUNoRSxRQUFJLENBQUMsV0FBVyxJQUFJLEdBQUc7QUFFbkI7QUFBQSxJQUNKO0FBRUEsVUFBTSxVQUFVLGtCQUFrQixtQkFBbUIsSUFBSTtBQUV6RCxXQUFPLFNBQVM7QUFFaEIsVUFBTSxRQUFRLFNBQVM7QUFDdkIsUUFBSSxPQUFPO0FBQ1AsVUFBSSxLQUFLLE9BQU87QUFDWixjQUFNLFNBQVMsSUFBSSxJQUFJLEtBQUssS0FBSztBQUNqQyxtQkFBVyxRQUFRLE9BQU87QUFDdEIsaUJBQU8sSUFBSSxJQUFJO0FBQUEsUUFDbkI7QUFDQSxhQUFLLFFBQVEsQ0FBQyxHQUFHLE1BQU07QUFBQSxNQUMzQixPQUFPO0FBQ0gsYUFBSyxRQUFRO0FBQUEsTUFDakI7QUFBQSxJQUNKO0FBQUEsRUFDSjtBQUNKOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -3,8 +3,8 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { existsSync } from "fs";
7
- import { join } from "path";
6
+ import { existsSync } from "node:fs";
7
+ import { join } from "node:path";
8
8
  import {
9
9
  createSolutionBuilder,
10
10
  createSolutionBuilderHost,
@@ -116,4 +116,4 @@ function instrumentHostWithInterceptors(host, currentContext, graph) {
116
116
  export {
117
117
  createSolutionBuilderContext
118
118
  };
119
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvc29sdXRpb24tYnVpbGRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jIH0gZnJvbSBcImZzXCI7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7XG4gICAgQ29tcGlsZXJIb3N0LFxuICAgIGNyZWF0ZVNvbHV0aW9uQnVpbGRlcixcbiAgICBjcmVhdGVTb2x1dGlvbkJ1aWxkZXJIb3N0LFxuICAgIERpYWdub3N0aWMsXG4gICAgRW1pdEFuZFNlbWFudGljRGlhZ25vc3RpY3NCdWlsZGVyUHJvZ3JhbSxcbiAgICBFeGl0U3RhdHVzLFxuICAgIFNvbHV0aW9uQnVpbGRlckhvc3QsXG4gICAgc3lzLFxufSBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuLi8uLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IEJ1aWxkRXJyb3IsIEludGVybmFsQnVpbGRFcnJvciB9IGZyb20gXCIuLi9lcnJvci5qc1wiO1xuaW1wb3J0IHsgR3JhcGggfSBmcm9tIFwiLi4vZ3JhcGguanNcIjtcbmltcG9ydCB7IFR5cGVzY3JpcHRDb250ZXh0IH0gZnJvbSBcIi4vY29udGV4dC5qc1wiO1xuXG5jb25zdCBCVUlMRF9ESUFHTk9TVElDUyA9IGZhbHNlO1xuXG5pbnRlcmZhY2UgUGFja2FnZUJ1aWxkQ29udGV4dCB7XG4gICAgZmlsZVdyaXRlPzogKHdyaXRlRmlsZTogdHlwZW9mIHN5cy53cml0ZUZpbGUsIGZpbGVuYW1lOiBzdHJpbmcsIGNvbnRlbnRzOiBzdHJpbmcsIHdyaXRlQm9tPzogYm9vbGVhbikgPT4gdm9pZDtcbiAgICByZWZyZXNoQ2FsbGJhY2soKTogdm9pZDtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVNvbHV0aW9uQnVpbGRlckNvbnRleHQoXG4gICAgd29ya3NwYWNlOiBQYWNrYWdlLFxuICAgIGdyYXBoOiBHcmFwaCB8IHVuZGVmaW5lZCxcbik6IFByb21pc2U8VHlwZXNjcmlwdENvbnRleHQ+IHtcbiAgICBsZXQgZGlhZ25vc3RpY3M6IHVuZGVmaW5lZCB8IERpYWdub3N0aWNbXTtcbiAgICBjb25zdCBob3N0ID0gY3JlYXRlU29sdXRpb25CdWlsZGVySG9zdCgpO1xuICAgIGhvc3QucmVwb3J0RGlhZ25vc3RpYyA9IGRpYWdub3N0aWMgPT4gKGRpYWdub3N0aWNzID8/PSBbXSkucHVzaChkaWFnbm9zdGljKTtcbiAgICBsZXQgY29udGV4dDogdW5kZWZpbmVkIHwgUGFja2FnZUJ1aWxkQ29udGV4dDtcblxuICAgIGZ1bmN0aW9uIGN1cnJlbnRDb250ZXh0KCkge1xuICAgICAgICBpZiAoY29udGV4dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJCdWlsZCBjb250ZXh0IGFjY2Vzc2VkIHdpdGggbm8gXCIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb250ZXh0O1xuICAgIH1cblxuICAgIGluc3RydW1lbnRIb3N0V2l0aEludGVyY2VwdG9ycyhob3N0LCBjdXJyZW50Q29udGV4dCwgZ3JhcGgpO1xuXG4gICAgY29uc3QgYnVpbGRlciA9IGNyZWF0ZVNvbHV0aW9uQnVpbGRlcihob3N0LCBbd29ya3NwYWNlLnJlc29sdmUoXCJ0c2NvbmZpZy5qc29uXCIpXSwge30pO1xuXG4gICAgVHlwZXNjcmlwdENvbnRleHQuZGlhZ25vc2UoZGlhZ25vc3RpY3MpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgYXN5bmMgYnVpbGQocGtnOiBQYWNrYWdlLCBwYXRoOiBzdHJpbmcsIHJlZnJlc2hDYWxsYmFjazogKCkgPT4gdm9pZCwgX2VtaXQ/OiBib29sZWFuKSB7XG4gICAgICAgICAgICBjb250ZXh0ID0ge1xuICAgICAgICAgICAgICAgIHJlZnJlc2hDYWxsYmFjayxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGlmIChwYXRoID09PSBcInNyY1wiICYmIHBrZy5pc0xpYnJhcnkgJiYgcGtnLnN1cHBvcnRzRXNtICYmIHBrZy5zdXBwb3J0c0Nqcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVzbURlY2xJZGVudGlmaWVyID0gbmV3IFJlZ0V4cChcbiAgICAgICAgICAgICAgICAgICAgYF4oJHtwa2cucmVzb2x2ZShcImRpc3RcIikucmVwbGFjZSgvW1xcXFwvXS9nLCBcIltcXFxcL11cIil9W1xcXFwvXSg/Oi4qKSllc20oW1xcXFwvXS4qKD86XFxcXC5kXFxcXC50c3xcXFxcLmRcXFxcLnRzXFxcXC5tYXApKSRgLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgY29udGV4dC5maWxlV3JpdGUgPSAod3JpdGVGaWxlLCBmaWxlbmFtZSwgY29udGVudHMsIHdyaXRlQm9tKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gZmlsZW5hbWUubWF0Y2goZXNtRGVjbElkZW50aWZpZXIpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1hdGNoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgd3JpdGVGaWxlKGAke21hdGNoWzFdfWNqcyR7bWF0Y2hbMl19YCwgY29udGVudHMsIHdyaXRlQm9tKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXR1cyA9IGJ1aWxkZXIuYnVpbGQocGtnLnJlc29sdmUoam9pbihwYXRoLCBcInRzY29uZmlnLmpzb25cIikpKTtcblxuICAgICAgICAgICAgICAgIFR5cGVzY3JpcHRDb250ZXh0LmRpYWdub3NlKGRpYWdub3N0aWNzKTtcblxuICAgICAgICAgICAgICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgdW5kZWZpbmVkOlxuICAgICAgICAgICAgICAgICAgICBjYXNlIEV4aXRTdGF0dXMuU3VjY2VzczpcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgRXhpdFN0YXR1cy5JbnZhbGlkUHJvamVjdF9PdXRwdXRzU2tpcHBlZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCdWlsZEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBUeXBlc2NyaXB0IGRvZXMgbm90IHRoaW5rICR7cGF0aH0gaXMgcGFydCBvZiB0aGUgcHJvamVjdCwgdGhpcyBpcyBwcm9iYWJseSBhIGJ1aWxkIHRvb2xpbmcgZXJyb3JgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBjYXNlIEV4aXRTdGF0dXMuUHJvamVjdFJlZmVyZW5jZUN5Y2xlX091dHB1dHNTa2lwcGVkOlxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEJ1aWxkRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYFR5cGVzY3JpcHQgaWRlbnRpZmllZCBhIGN5Y2xpY2FsIHByb2plY3QgcmVmZXJlbmNlIGluICR7cGF0aH0sIHBsZWFzZSBjaGVjayBwYWNrYWdlIGRlcGVuZGVuY2llc2AsXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxCdWlsZEVycm9yKGBCdWlsZCBlcnJvciAke0V4aXRTdGF0dXNbc3RhdHVzXX0gd2l0aG91dCBkaWFnbm9zdGljc2ApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICAgICAgY29udGV4dCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9O1xufVxuXG4vKipcbiAqIEFkZHMgaW50ZXJjZXB0aW9uIHBvaW50cyBmb3IgbXVja2luZyBhcm91bmQgaW4gVFMgaW50ZXJuYWxzLlxuICovXG5mdW5jdGlvbiBpbnN0cnVtZW50SG9zdFdpdGhJbnRlcmNlcHRvcnMoXG4gICAgaG9zdDogU29sdXRpb25CdWlsZGVySG9zdDxFbWl0QW5kU2VtYW50aWNEaWFnbm9zdGljc0J1aWxkZXJQcm9ncmFtPixcbiAgICBjdXJyZW50Q29udGV4dDogKCkgPT4gUGFja2FnZUJ1aWxkQ29udGV4dCxcbiAgICBncmFwaD86IEdyYXBoLFxuKSB7XG4gICAgLy8gTWF0Y2hlcyBhbnkgZmlsZSB0aGF0IG1heSBiZSB0aGUgdHlwZSBkZWZpbml0aW9ucyBmb3Igb25lIG9mIG91ciAudHMgZmlsZXNcbiAgICBjb25zdCBtb2R1bGVJZGVudGlmaWVyID0gZ3JhcGhcbiAgICAgICAgPyBuZXcgUmVnRXhwKGBeKCR7Z3JhcGgubm9kZXMubWFwKG5vZGUgPT4gbm9kZS5wa2cucGF0aCkuam9pbihcInxcIil9KVtcXFxcL11kaXN0W1xcXFwvXSg/OmVzbXxjanMpLyguKikuZC50cyRgKVxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIC8vIEluc3RydW1lbnQgd3JpdGUgdG8gdXBkYXRlIHNwaW5uZXIgYW5kIGJpZnVyY2F0ZSB0eXBlIGRlZmluaXRpb24gd3JpdGVzIHRvIENKUyBpZiBwcm9qZWN0IGluY2x1ZGVzIGJvdGggQ0pTIGFuZFxuICAgIC8vIEVTTVxuICAgIGNvbnN0IHdyaXRlRmlsZSA9IGhvc3Qud3JpdGVGaWxlID8/IHN5cy53cml0ZUZpbGU7XG4gICAgaG9zdC53cml0ZUZpbGUgPSAocGF0aCwgZGF0YSwgd3JpdGVCb20pID0+IHtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IGN1cnJlbnRDb250ZXh0KCk7XG4gICAgICAgIGNvbnRleHQucmVmcmVzaENhbGxiYWNrKCk7XG4gICAgICAgIHdyaXRlRmlsZShwYXRoLCBkYXRhLCB3cml0ZUJvbSk7XG4gICAgICAgIGNvbnRleHQuZmlsZVdyaXRlPy4od3JpdGVGaWxlLCBwYXRoLCBkYXRhLCB3cml0ZUJvbSk7XG4gICAgfTtcblxuICAgIC8vIEludGVyY2VwdHMgZm9yIGRpYWdub3N0aWNzIGFuZCB0byB1cGRhdGUgc3Bpbm5lclxuICAgIGxldCByZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzOiBDb21waWxlckhvc3RbXCJyZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzXCJdIHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IHJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHNJbnRlcmNlcHRvcjogQ29tcGlsZXJIb3N0W1wicmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFsc1wiXSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgIGN1cnJlbnRDb250ZXh0KCkucmVmcmVzaENhbGxiYWNrKCk7XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gcmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFscyEoLi4uYXJncyk7XG4gICAgICAgIGlmICghQlVJTERfRElBR05PU1RJQ1MpIHtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIHJlc3VsdCkge1xuICAgICAgICAgICAgY29uc3QgZmlsZW5hbWUgPSBlbnRyeS5yZXNvbHZlZE1vZHVsZT8ucmVzb2x2ZWRGaWxlTmFtZTtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gbW9kdWxlSWRlbnRpZmllciAmJiBmaWxlbmFtZT8ubWF0Y2gobW9kdWxlSWRlbnRpZmllcik7XG4gICAgICAgICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2VGaWxlbmFtZSA9IGAke21hdGNoWzFdfS9zcmMvJHttYXRjaFsyXX0udHNgO1xuICAgICAgICAgICAgICAgIGlmIChleGlzdHNTeW5jKHNvdXJjZUZpbGVuYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oXCIuZC50cyByZWZlcmVuY2VcIiwgc291cmNlRmlsZW5hbWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfTtcblxuICAgIC8vIFNvbHV0aW9uQnVpbGRlciBkZXNpZ24gZG9lc24ndCBhbGxvdyB1cyB0byBhY2Nlc3MgXCJyZWFsXCIgcmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFscyBiZWNhdXNlIGl0J3MgdW5kZWZpbmVkIGhlcmVcbiAgICAvLyBhbmQgb25seSBjcmVhdGVkIGluIGNyZWF0ZVNvbHV0aW9uQnVpbGRlciB3aGVuIGl0IGNyZWF0ZXMgdGhlIENvbXBpbGVySG9zdC4gIFNvIGluc3RlYWQgaW5qZWN0IHdoZW4gdGhlXG4gICAgLy8gQ29tcGlsZXJIb3N0IGlzIHBhc3NlZCB0byBTb2x1dGlvbkJ1aWxkZXJIb3N0I2NyZWF0ZVByb2dyYW1cbiAgICBjb25zdCBjcmVhdGVQcm9ncmFtID0gaG9zdC5jcmVhdGVQcm9ncmFtO1xuICAgIGhvc3QuY3JlYXRlUHJvZ3JhbSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbXBpbGVySG9zdCA9IGFyZ3NbMl07XG5cbiAgICAgICAgLy8gSW5zdHJ1bWVudCBjb21waWxlciBob3N0IGZvciBzcGlubmVyICsgZGlhZ25vc3RpY3NcbiAgICAgICAgaWYgKGNvbXBpbGVySG9zdCAmJiBjb21waWxlckhvc3QucmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFscyAhPT0gcmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFsc0ludGVyY2VwdG9yKSB7XG4gICAgICAgICAgICByZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzID0gY29tcGlsZXJIb3N0LnJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHM7XG4gICAgICAgICAgICBjb21waWxlckhvc3QucmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFscyA9IHJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHNJbnRlcmNlcHRvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGNyZWF0ZVByb2dyYW0oLi4uYXJncyk7XG5cbiAgICAgICAgLy8gVFMgcmVhZHMgY29tcGlsZXIgb3B0aW9ucyBpbiBhIGxvbmcgdGlnaHQgbG9vcCB3aGVyZSB3ZSBvdGhlcndpc2UgbmV2ZXIgd291bGQgdXBkYXRlIHRoZSBzcGlubmVyXG4gICAgICAgIGNvbnN0IGdldENvbXBpbGVyT3B0aW9ucyA9IHJlc3VsdC5nZXRDb21waWxlck9wdGlvbnM7XG4gICAgICAgIHJlc3VsdC5nZXRDb21waWxlck9wdGlvbnMgPSAoLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgY3VycmVudENvbnRleHQoKS5yZWZyZXNoQ2FsbGJhY2soKTtcbiAgICAgICAgICAgIHJldHVybiBnZXRDb21waWxlck9wdGlvbnMoLi4uYXJncyk7XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9O1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsa0JBQWtCO0FBQzNCLFNBQVMsWUFBWTtBQUNyQjtBQUFBLEVBRUk7QUFBQSxFQUNBO0FBQUEsRUFHQTtBQUFBLEVBRUE7QUFBQSxPQUNHO0FBRVAsU0FBUyxZQUFZLDBCQUEwQjtBQUUvQyxTQUFTLHlCQUF5QjtBQUVsQyxNQUFNLG9CQUFvQjtBQU8xQixlQUFzQiw2QkFDbEIsV0FDQSxPQUMwQjtBQUMxQixNQUFJO0FBQ0osUUFBTSxPQUFPLDBCQUEwQjtBQUN2QyxPQUFLLG1CQUFtQixpQkFBZSxnQkFBZ0IsQ0FBQyxHQUFHLEtBQUssVUFBVTtBQUMxRSxNQUFJO0FBRUosV0FBUyxpQkFBaUI7QUFDdEIsUUFBSSxZQUFZLFFBQVc7QUFD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
119
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2J1aWxkaW5nL3R5cGVzY3JpcHQvc29sdXRpb24tYnVpbGRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IGpvaW4gfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQge1xuICAgIENvbXBpbGVySG9zdCxcbiAgICBjcmVhdGVTb2x1dGlvbkJ1aWxkZXIsXG4gICAgY3JlYXRlU29sdXRpb25CdWlsZGVySG9zdCxcbiAgICBEaWFnbm9zdGljLFxuICAgIEVtaXRBbmRTZW1hbnRpY0RpYWdub3N0aWNzQnVpbGRlclByb2dyYW0sXG4gICAgRXhpdFN0YXR1cyxcbiAgICBTb2x1dGlvbkJ1aWxkZXJIb3N0LFxuICAgIHN5cyxcbn0gZnJvbSBcInR5cGVzY3JpcHRcIjtcbmltcG9ydCB7IFBhY2thZ2UgfSBmcm9tIFwiLi4vLi4vdXRpbC9wYWNrYWdlLmpzXCI7XG5pbXBvcnQgeyBCdWlsZEVycm9yLCBJbnRlcm5hbEJ1aWxkRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3IuanNcIjtcbmltcG9ydCB7IEdyYXBoIH0gZnJvbSBcIi4uL2dyYXBoLmpzXCI7XG5pbXBvcnQgeyBUeXBlc2NyaXB0Q29udGV4dCB9IGZyb20gXCIuL2NvbnRleHQuanNcIjtcblxuY29uc3QgQlVJTERfRElBR05PU1RJQ1MgPSBmYWxzZTtcblxuaW50ZXJmYWNlIFBhY2thZ2VCdWlsZENvbnRleHQge1xuICAgIGZpbGVXcml0ZT86ICh3cml0ZUZpbGU6IHR5cGVvZiBzeXMud3JpdGVGaWxlLCBmaWxlbmFtZTogc3RyaW5nLCBjb250ZW50czogc3RyaW5nLCB3cml0ZUJvbT86IGJvb2xlYW4pID0+IHZvaWQ7XG4gICAgcmVmcmVzaENhbGxiYWNrKCk6IHZvaWQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVTb2x1dGlvbkJ1aWxkZXJDb250ZXh0KFxuICAgIHdvcmtzcGFjZTogUGFja2FnZSxcbiAgICBncmFwaDogR3JhcGggfCB1bmRlZmluZWQsXG4pOiBQcm9taXNlPFR5cGVzY3JpcHRDb250ZXh0PiB7XG4gICAgbGV0IGRpYWdub3N0aWNzOiB1bmRlZmluZWQgfCBEaWFnbm9zdGljW107XG4gICAgY29uc3QgaG9zdCA9IGNyZWF0ZVNvbHV0aW9uQnVpbGRlckhvc3QoKTtcbiAgICBob3N0LnJlcG9ydERpYWdub3N0aWMgPSBkaWFnbm9zdGljID0+IChkaWFnbm9zdGljcyA/Pz0gW10pLnB1c2goZGlhZ25vc3RpYyk7XG4gICAgbGV0IGNvbnRleHQ6IHVuZGVmaW5lZCB8IFBhY2thZ2VCdWlsZENvbnRleHQ7XG5cbiAgICBmdW5jdGlvbiBjdXJyZW50Q29udGV4dCgpIHtcbiAgICAgICAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQnVpbGQgY29udGV4dCBhY2Nlc3NlZCB3aXRoIG5vIFwiKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udGV4dDtcbiAgICB9XG5cbiAgICBpbnN0cnVtZW50SG9zdFdpdGhJbnRlcmNlcHRvcnMoaG9zdCwgY3VycmVudENvbnRleHQsIGdyYXBoKTtcblxuICAgIGNvbnN0IGJ1aWxkZXIgPSBjcmVhdGVTb2x1dGlvbkJ1aWxkZXIoaG9zdCwgW3dvcmtzcGFjZS5yZXNvbHZlKFwidHNjb25maWcuanNvblwiKV0sIHt9KTtcblxuICAgIFR5cGVzY3JpcHRDb250ZXh0LmRpYWdub3NlKGRpYWdub3N0aWNzKTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIGFzeW5jIGJ1aWxkKHBrZzogUGFja2FnZSwgcGF0aDogc3RyaW5nLCByZWZyZXNoQ2FsbGJhY2s6ICgpID0+IHZvaWQsIF9lbWl0PzogYm9vbGVhbikge1xuICAgICAgICAgICAgY29udGV4dCA9IHtcbiAgICAgICAgICAgICAgICByZWZyZXNoQ2FsbGJhY2ssXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBpZiAocGF0aCA9PT0gXCJzcmNcIiAmJiBwa2cuaXNMaWJyYXJ5ICYmIHBrZy5zdXBwb3J0c0VzbSAmJiBwa2cuc3VwcG9ydHNDanMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBlc21EZWNsSWRlbnRpZmllciA9IG5ldyBSZWdFeHAoXG4gICAgICAgICAgICAgICAgICAgIGBeKCR7cGtnLnJlc29sdmUoXCJkaXN0XCIpLnJlcGxhY2UoL1tcXFxcL10vZywgXCJbXFxcXC9dXCIpfVtcXFxcL10oPzouKikpZXNtKFtcXFxcL10uKig/OlxcXFwuZFxcXFwudHN8XFxcXC5kXFxcXC50c1xcXFwubWFwKSkkYCxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGNvbnRleHQuZmlsZVdyaXRlID0gKHdyaXRlRmlsZSwgZmlsZW5hbWUsIGNvbnRlbnRzLCB3cml0ZUJvbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9IGZpbGVuYW1lLm1hdGNoKGVzbURlY2xJZGVudGlmaWVyKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFtYXRjaCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHdyaXRlRmlsZShgJHttYXRjaFsxXX1janMke21hdGNoWzJdfWAsIGNvbnRlbnRzLCB3cml0ZUJvbSk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdGF0dXMgPSBidWlsZGVyLmJ1aWxkKHBrZy5yZXNvbHZlKGpvaW4ocGF0aCwgXCJ0c2NvbmZpZy5qc29uXCIpKSk7XG5cbiAgICAgICAgICAgICAgICBUeXBlc2NyaXB0Q29udGV4dC5kaWFnbm9zZShkaWFnbm9zdGljcyk7XG5cbiAgICAgICAgICAgICAgICBzd2l0Y2ggKHN0YXR1cykge1xuICAgICAgICAgICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICAgICAgY2FzZSBFeGl0U3RhdHVzLlN1Y2Nlc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgICAgICBjYXNlIEV4aXRTdGF0dXMuSW52YWxpZFByb2plY3RfT3V0cHV0c1NraXBwZWQ6XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQnVpbGRFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgVHlwZXNjcmlwdCBkb2VzIG5vdCB0aGluayAke3BhdGh9IGlzIHBhcnQgb2YgdGhlIHByb2plY3QsIHRoaXMgaXMgcHJvYmFibHkgYSBidWlsZCB0b29saW5nIGVycm9yYCxcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgY2FzZSBFeGl0U3RhdHVzLlByb2plY3RSZWZlcmVuY2VDeWNsZV9PdXRwdXRzU2tpcHBlZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBCdWlsZEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBUeXBlc2NyaXB0IGlkZW50aWZpZWQgYSBjeWNsaWNhbCBwcm9qZWN0IHJlZmVyZW5jZSBpbiAke3BhdGh9LCBwbGVhc2UgY2hlY2sgcGFja2FnZSBkZXBlbmRlbmNpZXNgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsQnVpbGRFcnJvcihgQnVpbGQgZXJyb3IgJHtFeGl0U3RhdHVzW3N0YXR1c119IHdpdGhvdXQgZGlhZ25vc3RpY3NgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgICAgIGNvbnRleHQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgfTtcbn1cblxuLyoqXG4gKiBBZGRzIGludGVyY2VwdGlvbiBwb2ludHMgZm9yIG11Y2tpbmcgYXJvdW5kIGluIFRTIGludGVybmFscy5cbiAqL1xuZnVuY3Rpb24gaW5zdHJ1bWVudEhvc3RXaXRoSW50ZXJjZXB0b3JzKFxuICAgIGhvc3Q6IFNvbHV0aW9uQnVpbGRlckhvc3Q8RW1pdEFuZFNlbWFudGljRGlhZ25vc3RpY3NCdWlsZGVyUHJvZ3JhbT4sXG4gICAgY3VycmVudENvbnRleHQ6ICgpID0+IFBhY2thZ2VCdWlsZENvbnRleHQsXG4gICAgZ3JhcGg/OiBHcmFwaCxcbikge1xuICAgIC8vIE1hdGNoZXMgYW55IGZpbGUgdGhhdCBtYXkgYmUgdGhlIHR5cGUgZGVmaW5pdGlvbnMgZm9yIG9uZSBvZiBvdXIgLnRzIGZpbGVzXG4gICAgY29uc3QgbW9kdWxlSWRlbnRpZmllciA9IGdyYXBoXG4gICAgICAgID8gbmV3IFJlZ0V4cChgXigke2dyYXBoLm5vZGVzLm1hcChub2RlID0+IG5vZGUucGtnLnBhdGgpLmpvaW4oXCJ8XCIpfSlbXFxcXC9dZGlzdFtcXFxcL10oPzplc218Y2pzKS8oLiopLmQudHMkYClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvLyBJbnN0cnVtZW50IHdyaXRlIHRvIHVwZGF0ZSBzcGlubmVyIGFuZCBiaWZ1cmNhdGUgdHlwZSBkZWZpbml0aW9uIHdyaXRlcyB0byBDSlMgaWYgcHJvamVjdCBpbmNsdWRlcyBib3RoIENKUyBhbmRcbiAgICAvLyBFU01cbiAgICBjb25zdCB3cml0ZUZpbGUgPSBob3N0LndyaXRlRmlsZSA/PyBzeXMud3JpdGVGaWxlO1xuICAgIGhvc3Qud3JpdGVGaWxlID0gKHBhdGgsIGRhdGEsIHdyaXRlQm9tKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRleHQgPSBjdXJyZW50Q29udGV4dCgpO1xuICAgICAgICBjb250ZXh0LnJlZnJlc2hDYWxsYmFjaygpO1xuICAgICAgICB3cml0ZUZpbGUocGF0aCwgZGF0YSwgd3JpdGVCb20pO1xuICAgICAgICBjb250ZXh0LmZpbGVXcml0ZT8uKHdyaXRlRmlsZSwgcGF0aCwgZGF0YSwgd3JpdGVCb20pO1xuICAgIH07XG5cbiAgICAvLyBJbnRlcmNlcHRzIGZvciBkaWFnbm9zdGljcyBhbmQgdG8gdXBkYXRlIHNwaW5uZXJcbiAgICBsZXQgcmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFsczogQ29tcGlsZXJIb3N0W1wicmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFsc1wiXSB8IHVuZGVmaW5lZDtcbiAgICBjb25zdCByZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzSW50ZXJjZXB0b3I6IENvbXBpbGVySG9zdFtcInJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHNcIl0gPSAoLi4uYXJncykgPT4ge1xuICAgICAgICBjdXJyZW50Q29udGV4dCgpLnJlZnJlc2hDYWxsYmFjaygpO1xuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHMhKC4uLmFyZ3MpO1xuICAgICAgICBpZiAoIUJVSUxEX0RJQUdOT1NUSUNTKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiByZXN1bHQpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVuYW1lID0gZW50cnkucmVzb2x2ZWRNb2R1bGU/LnJlc29sdmVkRmlsZU5hbWU7XG4gICAgICAgICAgICBjb25zdCBtYXRjaCA9IG1vZHVsZUlkZW50aWZpZXIgJiYgZmlsZW5hbWU/Lm1hdGNoKG1vZHVsZUlkZW50aWZpZXIpO1xuICAgICAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc291cmNlRmlsZW5hbWUgPSBgJHttYXRjaFsxXX0vc3JjLyR7bWF0Y2hbMl19LnRzYDtcbiAgICAgICAgICAgICAgICBpZiAoZXhpc3RzU3luYyhzb3VyY2VGaWxlbmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFwiLmQudHMgcmVmZXJlbmNlXCIsIHNvdXJjZUZpbGVuYW1lKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG5cbiAgICAvLyBTb2x1dGlvbkJ1aWxkZXIgZGVzaWduIGRvZXNuJ3QgYWxsb3cgdXMgdG8gYWNjZXNzIFwicmVhbFwiIHJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHMgYmVjYXVzZSBpdCdzIHVuZGVmaW5lZCBoZXJlXG4gICAgLy8gYW5kIG9ubHkgY3JlYXRlZCBpbiBjcmVhdGVTb2x1dGlvbkJ1aWxkZXIgd2hlbiBpdCBjcmVhdGVzIHRoZSBDb21waWxlckhvc3QuICBTbyBpbnN0ZWFkIGluamVjdCB3aGVuIHRoZVxuICAgIC8vIENvbXBpbGVySG9zdCBpcyBwYXNzZWQgdG8gU29sdXRpb25CdWlsZGVySG9zdCNjcmVhdGVQcm9ncmFtXG4gICAgY29uc3QgY3JlYXRlUHJvZ3JhbSA9IGhvc3QuY3JlYXRlUHJvZ3JhbTtcbiAgICBob3N0LmNyZWF0ZVByb2dyYW0gPSAoLi4uYXJncykgPT4ge1xuICAgICAgICBjb25zdCBjb21waWxlckhvc3QgPSBhcmdzWzJdO1xuXG4gICAgICAgIC8vIEluc3RydW1lbnQgY29tcGlsZXIgaG9zdCBmb3Igc3Bpbm5lciArIGRpYWdub3N0aWNzXG4gICAgICAgIGlmIChjb21waWxlckhvc3QgJiYgY29tcGlsZXJIb3N0LnJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHMgIT09IHJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHNJbnRlcmNlcHRvcikge1xuICAgICAgICAgICAgcmVzb2x2ZU1vZHVsZU5hbWVMaXRlcmFscyA9IGNvbXBpbGVySG9zdC5yZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzO1xuICAgICAgICAgICAgY29tcGlsZXJIb3N0LnJlc29sdmVNb2R1bGVOYW1lTGl0ZXJhbHMgPSByZXNvbHZlTW9kdWxlTmFtZUxpdGVyYWxzSW50ZXJjZXB0b3I7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXN1bHQgPSBjcmVhdGVQcm9ncmFtKC4uLmFyZ3MpO1xuXG4gICAgICAgIC8vIFRTIHJlYWRzIGNvbXBpbGVyIG9wdGlvbnMgaW4gYSBsb25nIHRpZ2h0IGxvb3Agd2hlcmUgd2Ugb3RoZXJ3aXNlIG5ldmVyIHdvdWxkIHVwZGF0ZSB0aGUgc3Bpbm5lclxuICAgICAgICBjb25zdCBnZXRDb21waWxlck9wdGlvbnMgPSByZXN1bHQuZ2V0Q29tcGlsZXJPcHRpb25zO1xuICAgICAgICByZXN1bHQuZ2V0Q29tcGlsZXJPcHRpb25zID0gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgIGN1cnJlbnRDb250ZXh0KCkucmVmcmVzaENhbGxiYWNrKCk7XG4gICAgICAgICAgICByZXR1cm4gZ2V0Q29tcGlsZXJPcHRpb25zKC4uLmFyZ3MpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLGtCQUFrQjtBQUMzQixTQUFTLFlBQVk7QUFDckI7QUFBQSxFQUVJO0FBQUEsRUFDQTtBQUFBLEVBR0E7QUFBQSxFQUVBO0FBQUEsT0FDRztBQUVQLFNBQVMsWUFBWSwwQkFBMEI7QUFFL0MsU0FBUyx5QkFBeUI7QUFFbEMsTUFBTSxvQkFBb0I7QUFPMUIsZUFBc0IsNkJBQ2xCLFdBQ0EsT0FDMEI7QUFDMUIsTUFBSTtBQUNKLFFBQU0sT0FBTywwQkFBMEI7QUFDdkMsT0FBSyxtQkFBbUIsaUJBQWUsZ0JBQWdCLENBQUMsR0FBRyxLQUFLLFVBQVU7QUFDMUUsTUFBSTtBQUVKLFdBQVMsaUJBQWlCO0FBQ3RCLFFBQUksWUFB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
@@ -3,8 +3,8 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { dirname, resolve } from "path";
7
- import { exit, stdout } from "process";
6
+ import { dirname, resolve } from "node:path";
7
+ import { exit, stdout } from "node:process";
8
8
  import { ensureCompiled } from "./ensure-compiled.js";
9
9
  import { executeNode } from "./execute.js";
10
10
  async function main(argv = process.argv) {
@@ -61,4 +61,4 @@ async function main(argv = process.argv) {
61
61
  export {
62
62
  main
63
63
  };
64
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3J1bm5pbmcvY2xpLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IGRpcm5hbWUsIHJlc29sdmUgfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgZXhpdCwgc3Rkb3V0IH0gZnJvbSBcInByb2Nlc3NcIjtcbmltcG9ydCB7IGVuc3VyZUNvbXBpbGVkIH0gZnJvbSBcIi4vZW5zdXJlLWNvbXBpbGVkLmpzXCI7XG5pbXBvcnQgeyBleGVjdXRlTm9kZSB9IGZyb20gXCIuL2V4ZWN1dGUuanNcIjtcblxuLyoqXG4gKiBFeGVjdXRlIGEgc2NyaXB0IGluIGEgcGFja2FnZSB0aGF0IGNvbmZvcm1zIHRvIG1hdHRlci5qcyBjb252ZW50aW9ucy4gIFRoaXMgaXMgcHJpbWFyaWx5IHVzZWZ1bCB3aXRoaW4gYSBtYXR0ZXIuanNcbiAqIGRldmVsb3BtZW50IGVudmlyb25tZW50IGJ1dCBzaG91bGQgYWxzbyB3b3JrIHdoZW4gaW5zdGFsbGVkIHZpYSBOUE0uXG4gKlxuICogRmlyc3Qgd2UgdHJhbnNsYXRlIHNvdXJjZSBmaWxlbmFtZXMgdG8gdGhlIHRyYW5zcGlsZWQgKi5qcyBlcXVpdmFsZW50LlxuICpcbiAqIElmIHRoZSB0YXJnZXQgc2NyaXB0IGlzIGluIGEgcGFja2FnZSBub3QgaW5zdGFsbGVkIHZpYSBOUE0gd2UgYnVpbGQgdGhlIHBhY2thZ2UuICBJZiB0aGUgcGFja2FnZSBpcyBhbiBOUE0gd29ya3NwYWNlXG4gKiB1bmRlciBhIHRvcC1sZXZlbCBwYWNrYWdlIHdlIGFsc28gYnVpbGQgZGVwZW5kZW5jaWVzLlxuICpcbiAqIFdlIHRoZW4gcnVuIHRoZSBzY3JpcHQgaW4gYSBjaGlsZCBwcm9jZXNzIHNvIHdlIGNhbiBlbmFibGUgc291cmNlIG1hcHMgdXNpbmcgbm9kZSAtLXNvdXJjZS1tYXBzLiAgWW91IGNhbiBkaXNhYmxlXG4gKiB0aGlzIGJ5IHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIE1BVFRFUl9ESVJFQ1RfRVhFQy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1haW4oYXJndiA9IHByb2Nlc3MuYXJndikge1xuICAgIGxldCBkaXJlY3RFeGVjID0gISFwcm9jZXNzLmVudi5NQVRURVJfRElSRUNUX0VYRUM7XG5cbiAgICAvLyBEcm9wIG5vZGUgYW5kIG1hdHRlci1ydW5cbiAgICBhcmd2ID0gYXJndi5zbGljZSgyKTtcblxuICAgIGNvbnN0IG5vZGVBcmd2ID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgLy8gUHJvY2VzcyBhcmd1bWVudHMgdG8gbWF0dGVyLXJ1biBpdHNlbGYgKHZlcnkgc2ltcGxlIGFzIG9mIHlldCBzbyBqdXN0IHByb2Nlc3NpbmcgbWFudWFsbHkpXG4gICAgd2hpbGUgKGFyZ3ZbMF1bMF0gPT09IFwiLVwiKSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbiA9IGFyZ3Yuc2hpZnQoKSE7XG5cbiAgICAgICAgc3dpdGNoIChvcHRpb24pIHtcbiAgICAgICAgICAgIGNhc2UgXCItLWNsZWFyXCI6XG4gICAgICAgICAgICAgICAgY29uc29sZS5jbGVhcigpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIFwiLS1kaXJlY3RcIjpcbiAgICAgICAgICAgICAgICBkaXJlY3RFeGVjID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcIi0taGVscFwiOlxuICAgICAgICAgICAgICAgIHN0ZG91dC53cml0ZShcbiAgICAgICAgICAgICAgICAgICAgXCJVc2FnZTogbWF0dGVyLXJ1biBbLS1jbGVhcl0gWy0tZGlyZWN0XSBbLTxOT0RFX09QVD5dLi4uIDxTQ1JJUFQ+IFtBUkddLi4uXFxuUnVuIGEgTm9kZS5qcyBzY3JpcHQgd2l0aCBzb3VyY2UgbWFwIHN1cHBvcnQgYW5kIGF1dG9tYXRpYyB0cmFuc3BpbGF0aW9uIG9mIFR5cGVTY3JpcHQuXCIsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAvLyBBbnkgb3B0aW9uIHdlIGRvbid0IHJlY29nbml6ZSB3ZSBwYXNzIHRvIG5vZGVcbiAgICAgICAgICAgICAgICBub2RlQXJndi5wdXNoKG9wdGlvbik7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHRyYWN0IHNjcmlwdCBuYW1lLiAgYXJndiBpcyB0aGVuIHRoZSBzY3JpcHQncyBhcmdzXG4gICAgbGV0IHNjcmlwdCA9IGFyZ3Yuc2hpZnQoKTtcblxuICAgIGlmIChzY3JpcHQgPT09IHVuZGVmaW5lZCB8fCBzY3JpcHQgPT09IFwiXCIpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yOiBTY3JpcHQgbmFtZSByZXF1aXJlZFwiKTtcbiAgICAgICAgZXhpdCgxKTtcbiAgICB9XG5cbiAgICBzY3JpcHQgPSByZXNvbHZlKHNjcmlwdCk7XG4gICAgbGV0IGRpcjtcblxuICAgIGlmIChzY3JpcHQubWF0Y2goL1tcXFxcL11ub2RlX21vZHVsZXNbXFxcXC9dLmJpbltcXFxcL10vKSkge1xuICAgICAgICAvLyBXaGVuIGV4ZWN1dGluZyBhIHNjcmlwdCBsaW5rZWQgdW5kZXIgbm9kZV9tb2R1bGVzLCBzZWFyY2ggZm9yIHRoZSBwcm9qZWN0IGZyb20gY3dkLiAgVGhpcyBvY2N1cnMgd2hlbiBydW5uaW5nXG4gICAgICAgIC8vIHRvb2xpbmcgc3VjaCBhcyBcIm1hdHRlci10ZXN0XCJcbiAgICAgICAgZGlyID0gcHJvY2Vzcy5jd2QoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBXaGVuIGV4ZWN1dGluZyBvdXRzaWRlIG9mIG5vZGUgbW9kdWxlcyB3ZSB3YW50IHRvIGJ1aWxkIHRoZSBwcm9qZWN0IGNvbnRhaW5pbmcgdGhlIHNjcmlwdFxuICAgICAgICBkaXIgPSBkaXJuYW1lKHNjcmlwdCk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBmb3JtYXQsIHBrZyB9ID0gYXdhaXQgZW5zdXJlQ29tcGlsZWQoZGlyKTtcblxuICAgIC8vIERldGVybWluZSB0aGUgYWN0dWFsIHNjcmlwdCB0byBydW5cbiAgICBpZiAoZm9ybWF0ICE9PSBcIm5vbmVcIikge1xuICAgICAgICBzY3JpcHQgPSBwa2cucmVzb2x2ZShcbiAgICAgICAgICAgIHBrZ1xuICAgICAgICAgICAgICAgIC5yZWxhdGl2ZShzY3JpcHQpXG4gICAgICAgICAgICAgICAgLnJlcGxhY2UoL1xcLnRzJC8sIFwiLmpzXCIpXG4gICAgICAgICAgICAgICAgLnJlcGxhY2UoL15zcmNbXFxcXC9dLywgYGRpc3QvJHtmb3JtYXR9L2ApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIElmIHdlIHJ1biBpbiB0aGUgc2FtZSBwcm9jZXNzIHdlIGNhbm5vdCBlbmFibGUgc291cmNlIG1hcHMgc28gZGVmYXVsdCBtb2RlIGlzIHRvIGZvcmsuICBIb3dldmVyIGZvciBkZXZlbG9wbWVudFxuICAgIC8vIHB1cnBvc2VzIGl0IGNhbiBiZSB1c2VmdWwgdG8gYXZvaWQgdGhlIGludGVybWVkaWFyeSBwcm9jZXNzLiAgSW4gdGhpcyBjYXNlIHlvdSBjYW4gc2V0IFwiLS1lbmFibGUtc291cmNlLW1hcHNcIlxuICAgIC8vIG1hbnVhbGx5IHRoZW4gc2V0IE1BVFRFUl9ESVJFQ1RfRVhFQ1xuICAgIGlmIChkaXJlY3RFeGVjKSB7XG4gICAgICAgIC8vIFRoaXMgd2lsbCBub3QgdHJhbnNwaWxlIHByb3Blcmx5IHRvIGNvbW1vbmpzIGJ1dCB3ZSBvbmx5IHVzZSB0aGlzIG1vZHVsZSBmcm9tIEVTTSBzbyB0aGF0J3MgT0tcbiAgICAgICAgYXdhaXQgaW1wb3J0KHNjcmlwdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gT3VyIGJlaGF2aW9yIGluIHJlc3BvbnNlIHRvIFNJR0lOVCBzaG91bGQgbWlycm9yIHRoZSBjaGlsZCBwcm9jZXNzJ3MuICBTbyBpZ25vcmUgdGhlIHNpZ25hbCBsb2NhbGx5LCBvbmx5XG4gICAgICAgIC8vIHF1aXR0aW5nIG9uY2UgdGhlIGNoaWxkIHByb2Nlc3MgZG9lc1xuICAgICAgICBwcm9jZXNzLm9uKFwiU0lHSU5UXCIsICgpID0+IHt9KTtcbiAgICAgICAgcHJvY2Vzcy5vbihcIlNJR1RFUk1cIiwgKCkgPT4ge30pO1xuXG4gICAgICAgIHByb2Nlc3MuZXhpdENvZGUgPSBhd2FpdCBleGVjdXRlTm9kZShzY3JpcHQsIGFyZ3YsIG5vZGVBcmd2KTtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxTQUFTLGVBQWU7QUFDakMsU0FBUyxNQUFNLGNBQWM7QUFDN0IsU0FBUyxzQkFBc0I7QUFDL0IsU0FBUyxtQkFBbUI7QUFjNUIsZUFBc0IsS0FBSyxPQUFPLFFBQVEsTUFBTTtBQUM1QyxNQUFJLGFBQWEsQ0FBQyxDQUFDLFFBQVEsSUFBSTtBQUcvQixTQUFPLEtBQUssTUFBTSxDQUFDO0FBRW5CLFFBQU0sV0FBVyxNQUFjO0FBRy9CLFNBQU8sS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEtBQUs7QUFDdkIsVUFBTSxTQUFTLEtBQUssTUFBTTtBQUUxQixZQUFRLFFBQVE7QUFBQSxNQUNaLEtBQUs7QUFDRCxnQkFBUSxNQUFNO0FBQ2Q7QUFBQSxNQUVKLEtBQUs7QUFDRCxxQkFBYTtBQUNiO0FBQUEsTUFFSixLQUFLO0FBQ0QsZUFBTztBQUFBLFVBQ0g7QUFBQSxRQUNKO0FBQ0E7QUFBQSxNQUVKO0FBRUksaUJBQVMsS0FBSyxNQUFNO0FBQ3BCO0FBQUEsSUFDUjtBQUFBLEVBQ0o7QUFHQSxNQUFJLFNBQVMsS0FBSyxNQUFNO0FBRXhCLE1BQUksV0FBVyxVQUFhLFdBQVcsSUFBSTtBQUN2QyxZQUFRLE1BQU0sNkJBQTZCO0FBQzNDLFNBQUssQ0FBQztBQUFBLEVBQ1Y7QUFFQSxXQUFTLFFBQVEsTUFBTTtBQUN2QixNQUFJO0FBRUosTUFBSSxPQUFPLE1BQU0saUNBQWlDLEdBQUc7QUFHakQsVUFBTSxRQUFRLElBQUk7QUFBQSxFQUN0QixPQUFPO0FBRUgsVUFBTSxRQUFRLE1BQU07QUFBQSxFQUN4QjtBQUVBLFFBQU0sRUFBRSxRQUFRLElBQUksSUFBSSxNQUFNLGVBQWUsR0FBRztBQUdoRCxNQUFJLFdBQVcsUUFBUTtBQUNuQixhQUFTLElBQUk7QUFBQSxNQUNULElBQ0ssU0FBUyxNQUFNLEVBQ2YsUUFBUSxTQUFTLEtBQUssRUFDdEIsUUFBUSxhQUFhLFFBQVEsTUFBTSxHQUFHO0FBQUEsSUFDL0M7QUFBQSxFQUNKO0FBS0EsTUFBSSxZQUFZO0FBRVosVUFBTSxPQUFPO0FBQUEsRUFDakIsT0FBTztBQUdILFlBQVEsR0FBRyxVQUFVLE1BQU07QUFBQSxJQUFDLENBQUM7QUFDN0IsWUFBUSxHQUFHLFdBQVcsTUFBTTtBQUFBLElBQUMsQ0FBQztBQUU5QixZQUFRLFdBQVcsTUFBTSxZQUFZLFFBQVEsTUFBTSxRQUFRO0FBQUEsRUFDL0Q7QUFDSjsiLAogICJuYW1lcyI6IFtdCn0K
64
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3J1bm5pbmcvY2xpLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IGRpcm5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBleGl0LCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBlbnN1cmVDb21waWxlZCB9IGZyb20gXCIuL2Vuc3VyZS1jb21waWxlZC5qc1wiO1xuaW1wb3J0IHsgZXhlY3V0ZU5vZGUgfSBmcm9tIFwiLi9leGVjdXRlLmpzXCI7XG5cbi8qKlxuICogRXhlY3V0ZSBhIHNjcmlwdCBpbiBhIHBhY2thZ2UgdGhhdCBjb25mb3JtcyB0byBtYXR0ZXIuanMgY29udmVudGlvbnMuICBUaGlzIGlzIHByaW1hcmlseSB1c2VmdWwgd2l0aGluIGEgbWF0dGVyLmpzXG4gKiBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCBidXQgc2hvdWxkIGFsc28gd29yayB3aGVuIGluc3RhbGxlZCB2aWEgTlBNLlxuICpcbiAqIEZpcnN0IHdlIHRyYW5zbGF0ZSBzb3VyY2UgZmlsZW5hbWVzIHRvIHRoZSB0cmFuc3BpbGVkICouanMgZXF1aXZhbGVudC5cbiAqXG4gKiBJZiB0aGUgdGFyZ2V0IHNjcmlwdCBpcyBpbiBhIHBhY2thZ2Ugbm90IGluc3RhbGxlZCB2aWEgTlBNIHdlIGJ1aWxkIHRoZSBwYWNrYWdlLiAgSWYgdGhlIHBhY2thZ2UgaXMgYW4gTlBNIHdvcmtzcGFjZVxuICogdW5kZXIgYSB0b3AtbGV2ZWwgcGFja2FnZSB3ZSBhbHNvIGJ1aWxkIGRlcGVuZGVuY2llcy5cbiAqXG4gKiBXZSB0aGVuIHJ1biB0aGUgc2NyaXB0IGluIGEgY2hpbGQgcHJvY2VzcyBzbyB3ZSBjYW4gZW5hYmxlIHNvdXJjZSBtYXBzIHVzaW5nIG5vZGUgLS1zb3VyY2UtbWFwcy4gIFlvdSBjYW4gZGlzYWJsZVxuICogdGhpcyBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBNQVRURVJfRElSRUNUX0VYRUMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYWluKGFyZ3YgPSBwcm9jZXNzLmFyZ3YpIHtcbiAgICBsZXQgZGlyZWN0RXhlYyA9ICEhcHJvY2Vzcy5lbnYuTUFUVEVSX0RJUkVDVF9FWEVDO1xuXG4gICAgLy8gRHJvcCBub2RlIGFuZCBtYXR0ZXItcnVuXG4gICAgYXJndiA9IGFyZ3Yuc2xpY2UoMik7XG5cbiAgICBjb25zdCBub2RlQXJndiA9IEFycmF5PHN0cmluZz4oKTtcblxuICAgIC8vIFByb2Nlc3MgYXJndW1lbnRzIHRvIG1hdHRlci1ydW4gaXRzZWxmICh2ZXJ5IHNpbXBsZSBhcyBvZiB5ZXQgc28ganVzdCBwcm9jZXNzaW5nIG1hbnVhbGx5KVxuICAgIHdoaWxlIChhcmd2WzBdWzBdID09PSBcIi1cIikge1xuICAgICAgICBjb25zdCBvcHRpb24gPSBhcmd2LnNoaWZ0KCkhO1xuXG4gICAgICAgIHN3aXRjaCAob3B0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIFwiLS1jbGVhclwiOlxuICAgICAgICAgICAgICAgIGNvbnNvbGUuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcIi0tZGlyZWN0XCI6XG4gICAgICAgICAgICAgICAgZGlyZWN0RXhlYyA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgXCItLWhlbHBcIjpcbiAgICAgICAgICAgICAgICBzdGRvdXQud3JpdGUoXG4gICAgICAgICAgICAgICAgICAgIFwiVXNhZ2U6IG1hdHRlci1ydW4gWy0tY2xlYXJdIFstLWRpcmVjdF0gWy08Tk9ERV9PUFQ+XS4uLiA8U0NSSVBUPiBbQVJHXS4uLlxcblJ1biBhIE5vZGUuanMgc2NyaXB0IHdpdGggc291cmNlIG1hcCBzdXBwb3J0IGFuZCBhdXRvbWF0aWMgdHJhbnNwaWxhdGlvbiBvZiBUeXBlU2NyaXB0LlwiLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgLy8gQW55IG9wdGlvbiB3ZSBkb24ndCByZWNvZ25pemUgd2UgcGFzcyB0byBub2RlXG4gICAgICAgICAgICAgICAgbm9kZUFyZ3YucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXh0cmFjdCBzY3JpcHQgbmFtZS4gIGFyZ3YgaXMgdGhlbiB0aGUgc2NyaXB0J3MgYXJnc1xuICAgIGxldCBzY3JpcHQgPSBhcmd2LnNoaWZ0KCk7XG5cbiAgICBpZiAoc2NyaXB0ID09PSB1bmRlZmluZWQgfHwgc2NyaXB0ID09PSBcIlwiKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvcjogU2NyaXB0IG5hbWUgcmVxdWlyZWRcIik7XG4gICAgICAgIGV4aXQoMSk7XG4gICAgfVxuXG4gICAgc2NyaXB0ID0gcmVzb2x2ZShzY3JpcHQpO1xuICAgIGxldCBkaXI7XG5cbiAgICBpZiAoc2NyaXB0Lm1hdGNoKC9bXFxcXC9dbm9kZV9tb2R1bGVzW1xcXFwvXS5iaW5bXFxcXC9dLykpIHtcbiAgICAgICAgLy8gV2hlbiBleGVjdXRpbmcgYSBzY3JpcHQgbGlua2VkIHVuZGVyIG5vZGVfbW9kdWxlcywgc2VhcmNoIGZvciB0aGUgcHJvamVjdCBmcm9tIGN3ZC4gIFRoaXMgb2NjdXJzIHdoZW4gcnVubmluZ1xuICAgICAgICAvLyB0b29saW5nIHN1Y2ggYXMgXCJtYXR0ZXItdGVzdFwiXG4gICAgICAgIGRpciA9IHByb2Nlc3MuY3dkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gV2hlbiBleGVjdXRpbmcgb3V0c2lkZSBvZiBub2RlIG1vZHVsZXMgd2Ugd2FudCB0byBidWlsZCB0aGUgcHJvamVjdCBjb250YWluaW5nIHRoZSBzY3JpcHRcbiAgICAgICAgZGlyID0gZGlybmFtZShzY3JpcHQpO1xuICAgIH1cblxuICAgIGNvbnN0IHsgZm9ybWF0LCBwa2cgfSA9IGF3YWl0IGVuc3VyZUNvbXBpbGVkKGRpcik7XG5cbiAgICAvLyBEZXRlcm1pbmUgdGhlIGFjdHVhbCBzY3JpcHQgdG8gcnVuXG4gICAgaWYgKGZvcm1hdCAhPT0gXCJub25lXCIpIHtcbiAgICAgICAgc2NyaXB0ID0gcGtnLnJlc29sdmUoXG4gICAgICAgICAgICBwa2dcbiAgICAgICAgICAgICAgICAucmVsYXRpdmUoc2NyaXB0KVxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9cXC50cyQvLCBcIi5qc1wiKVxuICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9ec3JjW1xcXFwvXS8sIGBkaXN0LyR7Zm9ybWF0fS9gKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBJZiB3ZSBydW4gaW4gdGhlIHNhbWUgcHJvY2VzcyB3ZSBjYW5ub3QgZW5hYmxlIHNvdXJjZSBtYXBzIHNvIGRlZmF1bHQgbW9kZSBpcyB0byBmb3JrLiAgSG93ZXZlciBmb3IgZGV2ZWxvcG1lbnRcbiAgICAvLyBwdXJwb3NlcyBpdCBjYW4gYmUgdXNlZnVsIHRvIGF2b2lkIHRoZSBpbnRlcm1lZGlhcnkgcHJvY2Vzcy4gIEluIHRoaXMgY2FzZSB5b3UgY2FuIHNldCBcIi0tZW5hYmxlLXNvdXJjZS1tYXBzXCJcbiAgICAvLyBtYW51YWxseSB0aGVuIHNldCBNQVRURVJfRElSRUNUX0VYRUNcbiAgICBpZiAoZGlyZWN0RXhlYykge1xuICAgICAgICAvLyBUaGlzIHdpbGwgbm90IHRyYW5zcGlsZSBwcm9wZXJseSB0byBjb21tb25qcyBidXQgd2Ugb25seSB1c2UgdGhpcyBtb2R1bGUgZnJvbSBFU00gc28gdGhhdCdzIE9LXG4gICAgICAgIGF3YWl0IGltcG9ydChzY3JpcHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE91ciBiZWhhdmlvciBpbiByZXNwb25zZSB0byBTSUdJTlQgc2hvdWxkIG1pcnJvciB0aGUgY2hpbGQgcHJvY2VzcydzLiAgU28gaWdub3JlIHRoZSBzaWduYWwgbG9jYWxseSwgb25seVxuICAgICAgICAvLyBxdWl0dGluZyBvbmNlIHRoZSBjaGlsZCBwcm9jZXNzIGRvZXNcbiAgICAgICAgcHJvY2Vzcy5vbihcIlNJR0lOVFwiLCAoKSA9PiB7fSk7XG4gICAgICAgIHByb2Nlc3Mub24oXCJTSUdURVJNXCIsICgpID0+IHt9KTtcblxuICAgICAgICBwcm9jZXNzLmV4aXRDb2RlID0gYXdhaXQgZXhlY3V0ZU5vZGUoc2NyaXB0LCBhcmd2LCBub2RlQXJndik7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsU0FBUyxlQUFlO0FBQ2pDLFNBQVMsTUFBTSxjQUFjO0FBQzdCLFNBQVMsc0JBQXNCO0FBQy9CLFNBQVMsbUJBQW1CO0FBYzVCLGVBQXNCLEtBQUssT0FBTyxRQUFRLE1BQU07QUFDNUMsTUFBSSxhQUFhLENBQUMsQ0FBQyxRQUFRLElBQUk7QUFHL0IsU0FBTyxLQUFLLE1BQU0sQ0FBQztBQUVuQixRQUFNLFdBQVcsTUFBYztBQUcvQixTQUFPLEtBQUssQ0FBQyxFQUFFLENBQUMsTUFBTSxLQUFLO0FBQ3ZCLFVBQU0sU0FBUyxLQUFLLE1BQU07QUFFMUIsWUFBUSxRQUFRO0FBQUEsTUFDWixLQUFLO0FBQ0QsZ0JBQVEsTUFBTTtBQUNkO0FBQUEsTUFFSixLQUFLO0FBQ0QscUJBQWE7QUFDYjtBQUFBLE1BRUosS0FBSztBQUNELGVBQU87QUFBQSxVQUNIO0FBQUEsUUFDSjtBQUNBO0FBQUEsTUFFSjtBQUVJLGlCQUFTLEtBQUssTUFBTTtBQUNwQjtBQUFBLElBQ1I7QUFBQSxFQUNKO0FBR0EsTUFBSSxTQUFTLEtBQUssTUFBTTtBQUV4QixNQUFJLFdBQVcsVUFBYSxXQUFXLElBQUk7QUFDdkMsWUFBUSxNQUFNLDZCQUE2QjtBQUMzQyxTQUFLLENBQUM7QUFBQSxFQUNWO0FBRUEsV0FBUyxRQUFRLE1BQU07QUFDdkIsTUFBSTtBQUVKLE1BQUksT0FBTyxNQUFNLGlDQUFpQyxHQUFHO0FBR2pELFVBQU0sUUFBUSxJQUFJO0FBQUEsRUFDdEIsT0FBTztBQUVILFVBQU0sUUFBUSxNQUFNO0FBQUEsRUFDeEI7QUFFQSxRQUFNLEVBQUUsUUFBUSxJQUFJLElBQUksTUFBTSxlQUFlLEdBQUc7QUFHaEQsTUFBSSxXQUFXLFFBQVE7QUFDbkIsYUFBUyxJQUFJO0FBQUEsTUFDVCxJQUNLLFNBQVMsTUFBTSxFQUNmLFFBQVEsU0FBUyxLQUFLLEVBQ3RCLFFBQVEsYUFBYSxRQUFRLE1BQU0sR0FBRztBQUFBLElBQy9DO0FBQUEsRUFDSjtBQUtBLE1BQUksWUFBWTtBQUVaLFVBQU0sT0FBTztBQUFBLEVBQ2pCLE9BQU87QUFHSCxZQUFRLEdBQUcsVUFBVSxNQUFNO0FBQUEsSUFBQyxDQUFDO0FBQzdCLFlBQVEsR0FBRyxXQUFXLE1BQU07QUFBQSxJQUFDLENBQUM7QUFFOUIsWUFBUSxXQUFXLE1BQU0sWUFBWSxRQUFRLE1BQU0sUUFBUTtBQUFBLEVBQy9EO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==