obsidian-dev-utils 22.1.1-beta.20 → 22.1.1-beta.21

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 (62) hide show
  1. package/CHANGELOG.md +12 -1
  2. package/dist/lib/cjs/Async.cjs +1 -1
  3. package/dist/lib/cjs/Async.d.cts +17 -17
  4. package/dist/lib/cjs/Library.cjs +1 -1
  5. package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +7 -7
  6. package/dist/lib/cjs/ScriptUtils/CliUtils.d.cts +8 -8
  7. package/dist/lib/cjs/ScriptUtils/Exec.cjs +1 -1
  8. package/dist/lib/cjs/ScriptUtils/Exec.d.cts +2 -2
  9. package/dist/lib/cjs/ScriptUtils/Root.cjs +1 -1
  10. package/dist/lib/cjs/ScriptUtils/Root.d.cts +2 -2
  11. package/dist/lib/cjs/ScriptUtils/cli.cjs +1 -1
  12. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +1 -1
  13. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.d.cts +2 -2
  14. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +1 -1
  15. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +2 -2
  16. package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +1 -1
  17. package/dist/lib/cjs/ScriptUtils/spellcheck.d.cts +2 -2
  18. package/dist/lib/cjs/ScriptUtils/version.cjs +1 -1
  19. package/dist/lib/cjs/ScriptUtils/version.d.cts +2 -2
  20. package/dist/lib/cjs/obsidian/Backlink.cjs +1 -1
  21. package/dist/lib/cjs/obsidian/Backlink.d.cts +1 -1
  22. package/dist/lib/cjs/obsidian/Dataview.cjs +1 -1
  23. package/dist/lib/cjs/obsidian/Dataview.d.cts +3 -3
  24. package/dist/lib/cjs/obsidian/DataviewLink.cjs +1 -1
  25. package/dist/lib/cjs/obsidian/DataviewLink.d.cts +2 -2
  26. package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +15 -6
  27. package/dist/lib/cjs/obsidian/Plugin/PluginBase.d.cts +11 -4
  28. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +20 -3
  29. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.d.cts +13 -0
  30. package/dist/lib/cjs/obsidian/Vault.cjs +1 -1
  31. package/dist/lib/cjs/obsidian/Vault.d.cts +1 -1
  32. package/dist/lib/esm/Async.d.mts +17 -17
  33. package/dist/lib/esm/Async.mjs +1 -1
  34. package/dist/lib/esm/Library.mjs +1 -1
  35. package/dist/lib/esm/ScriptUtils/CliUtils.d.mts +8 -8
  36. package/dist/lib/esm/ScriptUtils/CliUtils.mjs +7 -7
  37. package/dist/lib/esm/ScriptUtils/Exec.d.mts +2 -2
  38. package/dist/lib/esm/ScriptUtils/Exec.mjs +1 -1
  39. package/dist/lib/esm/ScriptUtils/Root.d.mts +2 -2
  40. package/dist/lib/esm/ScriptUtils/Root.mjs +1 -1
  41. package/dist/lib/esm/ScriptUtils/cli.mjs +1 -1
  42. package/dist/lib/esm/ScriptUtils/esbuild/Dependency.d.mts +2 -2
  43. package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +1 -1
  44. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +2 -2
  45. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +1 -1
  46. package/dist/lib/esm/ScriptUtils/spellcheck.d.mts +2 -2
  47. package/dist/lib/esm/ScriptUtils/spellcheck.mjs +1 -1
  48. package/dist/lib/esm/ScriptUtils/version.d.mts +2 -2
  49. package/dist/lib/esm/ScriptUtils/version.mjs +1 -1
  50. package/dist/lib/esm/obsidian/Backlink.d.mts +1 -1
  51. package/dist/lib/esm/obsidian/Backlink.mjs +1 -1
  52. package/dist/lib/esm/obsidian/Dataview.d.mts +3 -3
  53. package/dist/lib/esm/obsidian/Dataview.mjs +1 -1
  54. package/dist/lib/esm/obsidian/DataviewLink.d.mts +2 -2
  55. package/dist/lib/esm/obsidian/DataviewLink.mjs +1 -1
  56. package/dist/lib/esm/obsidian/Plugin/PluginBase.d.mts +11 -4
  57. package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +16 -10
  58. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.d.mts +13 -0
  59. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +20 -3
  60. package/dist/lib/esm/obsidian/Vault.d.mts +1 -1
  61. package/dist/lib/esm/obsidian/Vault.mjs +1 -1
  62. package/package.json +1 -1
@@ -63,4 +63,4 @@ export {
63
63
  resolvePathFromRootSafe,
64
64
  toRelativeFromRoot
65
65
  };
66
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL1Jvb3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFJvb3RcbiAqIENvbnRhaW5zIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBleGVjdXRpbmcgY29tbWFuZHMgZnJvbSB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgYSBwcm9qZWN0LFxuICogcmVzb2x2aW5nIHBhdGhzIHJlbGF0aXZlIHRvIHRoZSByb290LlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgRXhlY09wdGlvbixcbiAgRXhlY1Jlc3VsdFxufSBmcm9tICcuL0V4ZWMudHMnO1xuXG5pbXBvcnQge1xuICBkaXJuYW1lLFxuICBqb2luLFxuICByZWxhdGl2ZSxcbiAgcmVzb2x2ZSxcbiAgdG9Qb3NpeFBhdGhcbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBleGVjIH0gZnJvbSAnLi9FeGVjLnRzJztcbmltcG9ydCB7IGV4aXN0c1N5bmMgfSBmcm9tICcuL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMgfSBmcm9tICcuL09ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMudHMnO1xuXG4vKipcbiAqIEV4ZWN1dGVzIGEgY29tbWFuZCBmcm9tIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAqXG4gKiBAcGFyYW0gY29tbWFuZCAtIFRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIGV4ZWN1dGlvbi5cbiAqIEByZXR1cm5zIEEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIG91dHB1dCBvZiB0aGUgY29tbWFuZC5cbiAqIEB0aHJvd3MgSWYgdGhlIGNvbW1hbmQgZmFpbHMgd2l0aCBhIG5vbi16ZXJvIGV4aXQgY29kZSBhbmQgaWdub3JlRXhpdENvZGUgaXMgZmFsc2UuXG4gKiAgICAgICAgIFRoZSBlcnJvciBtZXNzYWdlIGluY2x1ZGVzIHRoZSBleGl0IGNvZGUgYW5kIHN0ZGVyci5cbiAqICAgICAgICAgSWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgZXhlY3V0aW9uIGFuZCBpZ25vcmVFeGl0Q29kZSBpcyB0cnVlLFxuICogICAgICAgICB0aGUgZXJyb3IgaXMgcmVzb2x2ZWQgd2l0aCB0aGUgc3Rkb3V0IGFuZCBzdGRlcnIuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleGVjRnJvbVJvb3QoY29tbWFuZDogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiB7IHdpdGhEZXRhaWxzPzogZmFsc2UgfSAmIEV4ZWNPcHRpb24pOiBQcm9taXNlPHN0cmluZz47XG5cbi8qKlxuICogRXhlY3V0ZXMgYSBjb21tYW5kIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICpcbiAqIEBwYXJhbSBjb21tYW5kIC0gVGhlIGNvbW1hbmQgdG8gZXhlY3V0ZS4gSXQgY2FuIGJlIGEgc3RyaW5nIG9yIGFuIGFycmF5IG9mIHN0cmluZ3MuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgZXhlY3V0aW9uLlxuICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCBFeGVjUmVzdWx0IG9iamVjdC5cbiAqICAgICAgICAgIFRoZSBFeGVjUmVzdWx0IG9iamVjdCBjb250YWlucyB0aGUgZXhpdCBjb2RlLCBleGl0IHNpZ25hbCwgc3RkZXJyLCBhbmQgc3Rkb3V0LlxuICogQHRocm93cyBJZiB0aGUgY29tbWFuZCBmYWlscyB3aXRoIGEgbm9uLXplcm8gZXhpdCBjb2RlIGFuZCBpZ25vcmVFeGl0Q29kZSBpcyBmYWxzZS5cbiAqICAgICAgICAgVGhlIGVycm9yIG1lc3NhZ2UgaW5jbHVkZXMgdGhlIGV4aXQgY29kZSBhbmQgc3RkZXJyLlxuICogICAgICAgICBJZiBhbiBlcnJvciBvY2N1cnMgZHVyaW5nIHRoZSBleGVjdXRpb24gYW5kIGlnbm9yZUV4aXRDb2RlIGlzIHRydWUsXG4gKiAgICAgICAgIHRoZSBlcnJvciBpcyByZXNvbHZlZCB3aXRoIHRoZSBzdGRvdXQgYW5kIHN0ZGVyci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4ZWNGcm9tUm9vdChjb21tYW5kOiBzdHJpbmcgfCBzdHJpbmdbXSwgb3B0aW9uczogeyB3aXRoRGV0YWlsczogdHJ1ZSB9ICYgRXhlY09wdGlvbik6IFByb21pc2U8RXhlY1Jlc3VsdD47XG5cbi8qKlxuICogRXhlY3V0ZXMgYSBjb21tYW5kIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICpcbiAqIEBwYXJhbSBjb21tYW5kIC0gVGhlIGNvbW1hbmQgdG8gZXhlY3V0ZS4gSXQgY2FuIGJlIGEgc3RyaW5nIG9yIGFuIGFycmF5IG9mIHN0cmluZ3MuXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgZXhlY3V0aW9uLlxuICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgb3V0cHV0IG9mIHRoZSBjb21tYW5kIG9yIGFuIEV4ZWNSZXN1bHQgb2JqZWN0LlxuICogICAgICAgICAgVGhlIEV4ZWNSZXN1bHQgb2JqZWN0IGNvbnRhaW5zIHRoZSBleGl0IGNvZGUsIGV4aXQgc2lnbmFsLCBzdGRlcnIsIGFuZCBzdGRvdXQuXG4gKiBAdGhyb3dzIElmIHRoZSBjb21tYW5kIGZhaWxzIHdpdGggYSBub24temVybyBleGl0IGNvZGUgYW5kIGlnbm9yZUV4aXRDb2RlIGlzIGZhbHNlLlxuICogICAgICAgICBUaGUgZXJyb3IgbWVzc2FnZSBpbmNsdWRlcyB0aGUgZXhpdCBjb2RlIGFuZCBzdGRlcnIuXG4gKiAgICAgICAgIElmIGFuIGVycm9yIG9jY3VycyBkdXJpbmcgdGhlIGV4ZWN1dGlvbiBhbmQgaWdub3JlRXhpdENvZGUgaXMgdHJ1ZSxcbiAqICAgICAgICAgdGhlIGVycm9yIGlzIHJlc29sdmVkIHdpdGggdGhlIHN0ZG91dCBhbmQgc3RkZXJyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhlY0Zyb21Sb290KGNvbW1hbmQ6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRpb25zOiBFeGVjT3B0aW9uID0ge30pOiBQcm9taXNlPEV4ZWNSZXN1bHQgfCBzdHJpbmc+IHtcbiAgbGV0IHJvb3QgPSBnZXRSb290RGlyKG9wdGlvbnMuY3dkKTtcblxuICBpZiAoIXJvb3QpIHtcbiAgICBpZiAob3B0aW9ucy5zaG91bGRGYWlsSWZDYWxsZWRGcm9tT3V0c2lkZVJvb3QgPz8gdHJ1ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCByb290IGRpcmVjdG9yeScpO1xuICAgIH1cblxuICAgIHJvb3QgPSBvcHRpb25zLmN3ZCA/PyBwcm9jZXNzLmN3ZCgpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuc2hvdWxkSW5jbHVkZURldGFpbHMpIHtcbiAgICByZXR1cm4gZXhlYyhjb21tYW5kLCB7IC4uLm9wdGlvbnMsIGN3ZDogcm9vdCwgc2hvdWxkSW5jbHVkZURldGFpbHM6IHRydWUgfSk7XG4gIH1cblxuICByZXR1cm4gZXhlYyhjb21tYW5kLCB7IC4uLm9wdGlvbnMsIGN3ZDogcm9vdCwgc2hvdWxkSW5jbHVkZURldGFpbHM6IGZhbHNlIH0pO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gKlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBwYXRoIHRvIHRoZSByb290IGRpcmVjdG9yeS5cbiAqIEB0aHJvd3MgSWYgdGhlIHJvb3QgZGlyZWN0b3J5IGNhbm5vdCBiZSBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3REaXIoY3dkPzogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gIGxldCBjdXJyZW50RGlyID0gdG9Qb3NpeFBhdGgoY3dkID8/IHByb2Nlc3MuY3dkKCkpO1xuICB3aGlsZSAoY3VycmVudERpciAhPT0gT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5DdXJyZW50RGlyIGFzIHN0cmluZyAmJiBjdXJyZW50RGlyICE9PSBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlJvb3REaXIgYXMgc3RyaW5nKSB7XG4gICAgaWYgKGV4aXN0c1N5bmMoam9pbihjdXJyZW50RGlyLCBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlBhY2thZ2VKc29uKSkpIHtcbiAgICAgIHJldHVybiB0b1Bvc2l4UGF0aChjdXJyZW50RGlyKTtcbiAgICB9XG4gICAgY3VycmVudERpciA9IGRpcm5hbWUoY3VycmVudERpcik7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHBhdGggcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gcmVzb2x2ZS5cbiAqIEBwYXJhbSBjd2QgLSBUaGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSB0byByZXNvbHZlIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgcmVzb2x2ZWQgYWJzb2x1dGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVQYXRoRnJvbVJvb3QocGF0aDogc3RyaW5nLCBjd2Q/OiBzdHJpbmcpOiBudWxsIHwgc3RyaW5nIHtcbiAgY29uc3Qgcm9vdERpciA9IGdldFJvb3REaXIoY3dkKTtcbiAgaWYgKCFyb290RGlyKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gcmVzb2x2ZShyb290RGlyLCBwYXRoKTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHBhdGggcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LCByZXR1cm5pbmcgdGhlIHJlc29sdmVkIHBhdGggb3IgdGhlIG9yaWdpbmFsIHBhdGggaWYgaXQgZG9lcyBub3QgZXhpc3QuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byByZXNvbHZlLlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSByZXNvbHZlZCBwYXRoIG9yIHRoZSBvcmlnaW5hbCBwYXRoIGlmIGl0IGRvZXMgbm90IGV4aXN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUocGF0aDogc3RyaW5nLCBjd2Q/OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcmVzb2x2ZVBhdGhGcm9tUm9vdChwYXRoLCBjd2QpID8/IHBhdGg7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gYWJzb2x1dGUgcGF0aCB0byBhIHJlbGF0aXZlIHBhdGggZnJvbSB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgYWJzb2x1dGUgcGF0aCB0byBjb252ZXJ0LlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9SZWxhdGl2ZUZyb21Sb290KHBhdGg6IHN0cmluZywgY3dkPzogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gIGNvbnN0IHJvb3REaXIgPSBnZXRSb290RGlyKGN3ZCk7XG4gIGlmICghcm9vdERpcikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aCA9IHRvUG9zaXhQYXRoKHBhdGgpO1xuICByZXR1cm4gcmVsYXRpdmUocm9vdERpciwgcGF0aCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBV0E7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLFlBQVk7QUFDckIsU0FBUyxrQkFBa0I7QUFDM0IsU0FBUyxpQ0FBaUM7QUF5Q25DLFNBQVMsYUFBYSxTQUE0QixVQUFzQixDQUFDLEdBQWlDO0FBQy9HLE1BQUksT0FBTyxXQUFXLFFBQVEsR0FBRztBQUVqQyxNQUFJLENBQUMsTUFBTTtBQUNULFFBQUksUUFBUSxxQ0FBcUMsTUFBTTtBQUNyRCxZQUFNLElBQUksTUFBTSwrQkFBK0I7QUFBQSxJQUNqRDtBQUVBLFdBQU8sUUFBUSxPQUFPLFFBQVEsSUFBSTtBQUFBLEVBQ3BDO0FBRUEsTUFBSSxRQUFRLHNCQUFzQjtBQUNoQyxXQUFPLEtBQUssU0FBUyxFQUFFLEdBQUcsU0FBUyxLQUFLLE1BQU0sc0JBQXNCLEtBQUssQ0FBQztBQUFBLEVBQzVFO0FBRUEsU0FBTyxLQUFLLFNBQVMsRUFBRSxHQUFHLFNBQVMsS0FBSyxNQUFNLHNCQUFzQixNQUFNLENBQUM7QUFDN0U7QUFTTyxTQUFTLFdBQVcsS0FBNkI7QUFDdEQsTUFBSSxhQUFhLFlBQVksT0FBTyxRQUFRLElBQUksQ0FBQztBQUNqRCxTQUFPLGVBQWUsMEJBQTBCLGNBQXdCLGVBQWUsMEJBQTBCLFNBQW1CO0FBQ2xJLFFBQUksV0FBVyxLQUFLLFlBQVksMEJBQTBCLFdBQVcsQ0FBQyxHQUFHO0FBQ3ZFLGFBQU8sWUFBWSxVQUFVO0FBQUEsSUFDL0I7QUFDQSxpQkFBYSxRQUFRLFVBQVU7QUFBQSxFQUNqQztBQUVBLFNBQU87QUFDVDtBQVNPLFNBQVMsb0JBQW9CLE1BQWMsS0FBNkI7QUFDN0UsUUFBTSxVQUFVLFdBQVcsR0FBRztBQUM5QixNQUFJLENBQUMsU0FBUztBQUNaLFdBQU87QUFBQSxFQUNUO0FBRUEsU0FBTyxRQUFRLFNBQVMsSUFBSTtBQUM5QjtBQVNPLFNBQVMsd0JBQXdCLE1BQWMsS0FBc0I7QUFDMUUsU0FBTyxvQkFBb0IsTUFBTSxHQUFHLEtBQUs7QUFDM0M7QUFTTyxTQUFTLG1CQUFtQixNQUFjLEtBQTZCO0FBQzVFLFFBQU0sVUFBVSxXQUFXLEdBQUc7QUFDOUIsTUFBSSxDQUFDLFNBQVM7QUFDWixXQUFPO0FBQUEsRUFDVDtBQUVBLFNBQU8sWUFBWSxJQUFJO0FBQ3ZCLFNBQU8sU0FBUyxTQUFTLElBQUk7QUFDL0I7IiwKICAibmFtZXMiOiBbXQp9Cg==
66
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL1Jvb3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFJvb3RcbiAqIENvbnRhaW5zIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBleGVjdXRpbmcgY29tbWFuZHMgZnJvbSB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgYSBwcm9qZWN0LFxuICogcmVzb2x2aW5nIHBhdGhzIHJlbGF0aXZlIHRvIHRoZSByb290LlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgRXhlY09wdGlvbixcbiAgRXhlY1Jlc3VsdFxufSBmcm9tICcuL0V4ZWMudHMnO1xuXG5pbXBvcnQge1xuICBkaXJuYW1lLFxuICBqb2luLFxuICByZWxhdGl2ZSxcbiAgcmVzb2x2ZSxcbiAgdG9Qb3NpeFBhdGhcbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBleGVjIH0gZnJvbSAnLi9FeGVjLnRzJztcbmltcG9ydCB7IGV4aXN0c1N5bmMgfSBmcm9tICcuL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMgfSBmcm9tICcuL09ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMudHMnO1xuXG4vKipcbiAqIEV4ZWN1dGVzIGEgY29tbWFuZCBmcm9tIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAqXG4gKiBAcGFyYW0gY29tbWFuZCAtIFRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIGV4ZWN1dGlvbi5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgb3V0cHV0IG9mIHRoZSBjb21tYW5kLlxuICogQHRocm93cyBJZiB0aGUgY29tbWFuZCBmYWlscyB3aXRoIGEgbm9uLXplcm8gZXhpdCBjb2RlIGFuZCBpZ25vcmVFeGl0Q29kZSBpcyBmYWxzZS5cbiAqICAgICAgICAgVGhlIGVycm9yIG1lc3NhZ2UgaW5jbHVkZXMgdGhlIGV4aXQgY29kZSBhbmQgc3RkZXJyLlxuICogICAgICAgICBJZiBhbiBlcnJvciBvY2N1cnMgZHVyaW5nIHRoZSBleGVjdXRpb24gYW5kIGlnbm9yZUV4aXRDb2RlIGlzIHRydWUsXG4gKiAgICAgICAgIHRoZSBlcnJvciBpcyByZXNvbHZlZCB3aXRoIHRoZSBzdGRvdXQgYW5kIHN0ZGVyci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4ZWNGcm9tUm9vdChjb21tYW5kOiBzdHJpbmcgfCBzdHJpbmdbXSwgb3B0aW9ucz86IHsgd2l0aERldGFpbHM/OiBmYWxzZSB9ICYgRXhlY09wdGlvbik6IFByb21pc2U8c3RyaW5nPjtcblxuLyoqXG4gKiBFeGVjdXRlcyBhIGNvbW1hbmQgZnJvbSB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gKlxuICogQHBhcmFtIGNvbW1hbmQgLSBUaGUgY29tbWFuZCB0byBleGVjdXRlLiBJdCBjYW4gYmUgYSBzdHJpbmcgb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncy5cbiAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBleGVjdXRpb24uXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdpdGggRXhlY1Jlc3VsdCBvYmplY3QuXG4gKiAgICAgICAgICBUaGUgRXhlY1Jlc3VsdCBvYmplY3QgY29udGFpbnMgdGhlIGV4aXQgY29kZSwgZXhpdCBzaWduYWwsIHN0ZGVyciwgYW5kIHN0ZG91dC5cbiAqIEB0aHJvd3MgSWYgdGhlIGNvbW1hbmQgZmFpbHMgd2l0aCBhIG5vbi16ZXJvIGV4aXQgY29kZSBhbmQgaWdub3JlRXhpdENvZGUgaXMgZmFsc2UuXG4gKiAgICAgICAgIFRoZSBlcnJvciBtZXNzYWdlIGluY2x1ZGVzIHRoZSBleGl0IGNvZGUgYW5kIHN0ZGVyci5cbiAqICAgICAgICAgSWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgZXhlY3V0aW9uIGFuZCBpZ25vcmVFeGl0Q29kZSBpcyB0cnVlLFxuICogICAgICAgICB0aGUgZXJyb3IgaXMgcmVzb2x2ZWQgd2l0aCB0aGUgc3Rkb3V0IGFuZCBzdGRlcnIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleGVjRnJvbVJvb3QoY29tbWFuZDogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM6IHsgd2l0aERldGFpbHM6IHRydWUgfSAmIEV4ZWNPcHRpb24pOiBQcm9taXNlPEV4ZWNSZXN1bHQ+O1xuXG4vKipcbiAqIEV4ZWN1dGVzIGEgY29tbWFuZCBmcm9tIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAqXG4gKiBAcGFyYW0gY29tbWFuZCAtIFRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIGV4ZWN1dGlvbi5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgb3V0cHV0IG9mIHRoZSBjb21tYW5kIG9yIGFuIEV4ZWNSZXN1bHQgb2JqZWN0LlxuICogICAgICAgICAgVGhlIEV4ZWNSZXN1bHQgb2JqZWN0IGNvbnRhaW5zIHRoZSBleGl0IGNvZGUsIGV4aXQgc2lnbmFsLCBzdGRlcnIsIGFuZCBzdGRvdXQuXG4gKiBAdGhyb3dzIElmIHRoZSBjb21tYW5kIGZhaWxzIHdpdGggYSBub24temVybyBleGl0IGNvZGUgYW5kIGlnbm9yZUV4aXRDb2RlIGlzIGZhbHNlLlxuICogICAgICAgICBUaGUgZXJyb3IgbWVzc2FnZSBpbmNsdWRlcyB0aGUgZXhpdCBjb2RlIGFuZCBzdGRlcnIuXG4gKiAgICAgICAgIElmIGFuIGVycm9yIG9jY3VycyBkdXJpbmcgdGhlIGV4ZWN1dGlvbiBhbmQgaWdub3JlRXhpdENvZGUgaXMgdHJ1ZSxcbiAqICAgICAgICAgdGhlIGVycm9yIGlzIHJlc29sdmVkIHdpdGggdGhlIHN0ZG91dCBhbmQgc3RkZXJyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhlY0Zyb21Sb290KGNvbW1hbmQ6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRpb25zOiBFeGVjT3B0aW9uID0ge30pOiBQcm9taXNlPEV4ZWNSZXN1bHQgfCBzdHJpbmc+IHtcbiAgbGV0IHJvb3QgPSBnZXRSb290RGlyKG9wdGlvbnMuY3dkKTtcblxuICBpZiAoIXJvb3QpIHtcbiAgICBpZiAob3B0aW9ucy5zaG91bGRGYWlsSWZDYWxsZWRGcm9tT3V0c2lkZVJvb3QgPz8gdHJ1ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCByb290IGRpcmVjdG9yeScpO1xuICAgIH1cblxuICAgIHJvb3QgPSBvcHRpb25zLmN3ZCA/PyBwcm9jZXNzLmN3ZCgpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuc2hvdWxkSW5jbHVkZURldGFpbHMpIHtcbiAgICByZXR1cm4gZXhlYyhjb21tYW5kLCB7IC4uLm9wdGlvbnMsIGN3ZDogcm9vdCwgc2hvdWxkSW5jbHVkZURldGFpbHM6IHRydWUgfSk7XG4gIH1cblxuICByZXR1cm4gZXhlYyhjb21tYW5kLCB7IC4uLm9wdGlvbnMsIGN3ZDogcm9vdCwgc2hvdWxkSW5jbHVkZURldGFpbHM6IGZhbHNlIH0pO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gKlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBwYXRoIHRvIHRoZSByb290IGRpcmVjdG9yeS5cbiAqIEB0aHJvd3MgSWYgdGhlIHJvb3QgZGlyZWN0b3J5IGNhbm5vdCBiZSBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3REaXIoY3dkPzogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gIGxldCBjdXJyZW50RGlyID0gdG9Qb3NpeFBhdGgoY3dkID8/IHByb2Nlc3MuY3dkKCkpO1xuICB3aGlsZSAoY3VycmVudERpciAhPT0gT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5DdXJyZW50RGlyIGFzIHN0cmluZyAmJiBjdXJyZW50RGlyICE9PSBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlJvb3REaXIgYXMgc3RyaW5nKSB7XG4gICAgaWYgKGV4aXN0c1N5bmMoam9pbihjdXJyZW50RGlyLCBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlBhY2thZ2VKc29uKSkpIHtcbiAgICAgIHJldHVybiB0b1Bvc2l4UGF0aChjdXJyZW50RGlyKTtcbiAgICB9XG4gICAgY3VycmVudERpciA9IGRpcm5hbWUoY3VycmVudERpcik7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHBhdGggcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gcmVzb2x2ZS5cbiAqIEBwYXJhbSBjd2QgLSBUaGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSB0byByZXNvbHZlIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgcmVzb2x2ZWQgYWJzb2x1dGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVQYXRoRnJvbVJvb3QocGF0aDogc3RyaW5nLCBjd2Q/OiBzdHJpbmcpOiBudWxsIHwgc3RyaW5nIHtcbiAgY29uc3Qgcm9vdERpciA9IGdldFJvb3REaXIoY3dkKTtcbiAgaWYgKCFyb290RGlyKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gcmVzb2x2ZShyb290RGlyLCBwYXRoKTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHBhdGggcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LCByZXR1cm5pbmcgdGhlIHJlc29sdmVkIHBhdGggb3IgdGhlIG9yaWdpbmFsIHBhdGggaWYgaXQgZG9lcyBub3QgZXhpc3QuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byByZXNvbHZlLlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSByZXNvbHZlZCBwYXRoIG9yIHRoZSBvcmlnaW5hbCBwYXRoIGlmIGl0IGRvZXMgbm90IGV4aXN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUocGF0aDogc3RyaW5nLCBjd2Q/OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcmVzb2x2ZVBhdGhGcm9tUm9vdChwYXRoLCBjd2QpID8/IHBhdGg7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gYWJzb2x1dGUgcGF0aCB0byBhIHJlbGF0aXZlIHBhdGggZnJvbSB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgYWJzb2x1dGUgcGF0aCB0byBjb252ZXJ0LlxuICogQHBhcmFtIGN3ZCAtIFRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHRvIHJlc29sdmUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9SZWxhdGl2ZUZyb21Sb290KHBhdGg6IHN0cmluZywgY3dkPzogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gIGNvbnN0IHJvb3REaXIgPSBnZXRSb290RGlyKGN3ZCk7XG4gIGlmICghcm9vdERpcikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aCA9IHRvUG9zaXhQYXRoKHBhdGgpO1xuICByZXR1cm4gcmVsYXRpdmUocm9vdERpciwgcGF0aCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBV0E7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLFlBQVk7QUFDckIsU0FBUyxrQkFBa0I7QUFDM0IsU0FBUyxpQ0FBaUM7QUF5Q25DLFNBQVMsYUFBYSxTQUE0QixVQUFzQixDQUFDLEdBQWlDO0FBQy9HLE1BQUksT0FBTyxXQUFXLFFBQVEsR0FBRztBQUVqQyxNQUFJLENBQUMsTUFBTTtBQUNULFFBQUksUUFBUSxxQ0FBcUMsTUFBTTtBQUNyRCxZQUFNLElBQUksTUFBTSwrQkFBK0I7QUFBQSxJQUNqRDtBQUVBLFdBQU8sUUFBUSxPQUFPLFFBQVEsSUFBSTtBQUFBLEVBQ3BDO0FBRUEsTUFBSSxRQUFRLHNCQUFzQjtBQUNoQyxXQUFPLEtBQUssU0FBUyxFQUFFLEdBQUcsU0FBUyxLQUFLLE1BQU0sc0JBQXNCLEtBQUssQ0FBQztBQUFBLEVBQzVFO0FBRUEsU0FBTyxLQUFLLFNBQVMsRUFBRSxHQUFHLFNBQVMsS0FBSyxNQUFNLHNCQUFzQixNQUFNLENBQUM7QUFDN0U7QUFTTyxTQUFTLFdBQVcsS0FBNkI7QUFDdEQsTUFBSSxhQUFhLFlBQVksT0FBTyxRQUFRLElBQUksQ0FBQztBQUNqRCxTQUFPLGVBQWUsMEJBQTBCLGNBQXdCLGVBQWUsMEJBQTBCLFNBQW1CO0FBQ2xJLFFBQUksV0FBVyxLQUFLLFlBQVksMEJBQTBCLFdBQVcsQ0FBQyxHQUFHO0FBQ3ZFLGFBQU8sWUFBWSxVQUFVO0FBQUEsSUFDL0I7QUFDQSxpQkFBYSxRQUFRLFVBQVU7QUFBQSxFQUNqQztBQUVBLFNBQU87QUFDVDtBQVNPLFNBQVMsb0JBQW9CLE1BQWMsS0FBNkI7QUFDN0UsUUFBTSxVQUFVLFdBQVcsR0FBRztBQUM5QixNQUFJLENBQUMsU0FBUztBQUNaLFdBQU87QUFBQSxFQUNUO0FBRUEsU0FBTyxRQUFRLFNBQVMsSUFBSTtBQUM5QjtBQVNPLFNBQVMsd0JBQXdCLE1BQWMsS0FBc0I7QUFDMUUsU0FBTyxvQkFBb0IsTUFBTSxHQUFHLEtBQUs7QUFDM0M7QUFTTyxTQUFTLG1CQUFtQixNQUFjLEtBQTZCO0FBQzVFLFFBQU0sVUFBVSxXQUFXLEdBQUc7QUFDOUIsTUFBSSxDQUFDLFNBQVM7QUFDWixXQUFPO0FBQUEsRUFDVDtBQUVBLFNBQU8sWUFBWSxJQUFJO0FBQ3ZCLFNBQU8sU0FBUyxTQUFTLElBQUk7QUFDL0I7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -86,4 +86,4 @@ function addCommand(program, name, description, taskFn) {
86
86
  export {
87
87
  cli
88
88
  };
89
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2NsaS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gY2xpXG4gKiBUaGlzIG1vZHVsZSBkZWZpbmVzIGEgQ0xJIGZvciBtYW5hZ2luZyB2YXJpb3VzIHRhc2tzIHJlbGF0ZWQgdG8gT2JzaWRpYW4gcGx1Z2luIGRldmVsb3BtZW50LlxuICogSXQgbGV2ZXJhZ2VzIHRoZSBgY29tbWFuZGVyYCBsaWJyYXJ5IHRvIGRlZmluZSBjb21tYW5kcyBmb3IgYnVpbGRpbmcsIGxpbnRpbmcsIHNwZWxsY2hlY2tpbmcsXG4gKiBhbmQgdXBkYXRpbmcgdGhlIHZlcnNpb24gb2YgdGhlIHBsdWdpbi4gVGhlIENMSSBpcyBkZXNpZ25lZCB0byBiZSBmbGV4aWJsZSBhbmQgY2FuIGhhbmRsZSBib3RoXG4gKiBzeW5jaHJvbm91cyBhbmQgYXN5bmNocm9ub3VzIHRhc2tzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgdHNJbXBvcnQgfSBmcm9tICd0c3gvZXNtL2FwaSc7XG5cbmltcG9ydCB0eXBlIHsgTWF5YmVSZXR1cm4gfSBmcm9tICcuLi9UeXBlLnRzJztcblxuaW1wb3J0IHsgaW52b2tlQXN5bmNTYWZlbHkgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQge1xuICBnZXREaXJuYW1lLFxuICBqb2luLFxuICByZWxhdGl2ZVxufSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7XG4gIGJ1aWxkQ2xlYW4sXG4gIGJ1aWxkQ29tcGlsZSxcbiAgYnVpbGRDb21waWxlU3ZlbHRlLFxuICBidWlsZENvbXBpbGVUeXBlU2NyaXB0LFxuICBidWlsZFN0YXRpY1xufSBmcm9tICcuL2J1aWxkLnRzJztcbmltcG9ydCB7XG4gIENsaVRhc2tSZXN1bHQsXG4gIHdyYXBDbGlUYXNrXG59IGZyb20gJy4vQ2xpVXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgQnVpbGRNb2RlLFxuICBidWlsZE9ic2lkaWFuUGx1Z2luXG59IGZyb20gJy4vZXNidWlsZC9PYnNpZGlhblBsdWdpbkJ1aWxkZXIudHMnO1xuaW1wb3J0IHsgbGludCB9IGZyb20gJy4vRVNMaW50L0VTTGludC50cyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICcuL2Zvcm1hdC50cyc7XG5pbXBvcnQge1xuICBleGlzdHNTeW5jLFxuICBwcm9jZXNzXG59IGZyb20gJy4vTm9kZU1vZHVsZXMudHMnO1xuaW1wb3J0IHsgcmVhZFBhY2thZ2VKc29uIH0gZnJvbSAnLi9OcG0udHMnO1xuaW1wb3J0IHsgcHVibGlzaCB9IGZyb20gJy4vTnBtUHVibGlzaC50cyc7XG5pbXBvcnQgeyBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzIH0gZnJvbSAnLi9PYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLnRzJztcbmltcG9ydCB7IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlIH0gZnJvbSAnLi9Sb290LnRzJztcbmltcG9ydCB7IHNwZWxsY2hlY2sgfSBmcm9tICcuL3NwZWxsY2hlY2sudHMnO1xuaW1wb3J0IHsgdXBkYXRlVmVyc2lvbiB9IGZyb20gJy4vdmVyc2lvbi50cyc7XG5cbi8qKlxuICogVGhlIG51bWJlciBvZiBsZWFkaW5nIGFyZ3VtZW50cyB0byBza2lwIHdoZW4gcGFyc2luZyBjb21tYW5kLWxpbmUgYXJndW1lbnRzLlxuICogVGhlIGZpcnN0IHR3byBlbGVtZW50cyB0eXBpY2FsbHkgcmVwcmVzZW50IHRoZSBOb2RlLmpzIGV4ZWN1dGFibGUgYW5kIHRoZSBzY3JpcHQgcGF0aDpcbiAqIGBbXCJub2RlXCIsIFwicGF0aC90by9jbGkuY2pzXCIsIC4uLmFjdHVhbEFyZ3NdYFxuICovXG5jb25zdCBOT0RFX1NDUklQVF9BUkdWX1NLSVBfQ09VTlQgPSAyO1xuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIHRoZSBuYW1lcyBvZiB0aGUgY29tbWFuZHMgYXZhaWxhYmxlIGluIHRoZSBDTEkuXG4gKi9cbmVudW0gQ29tbWFuZE5hbWVzIHtcbiAgQnVpbGQgPSAnYnVpbGQnLFxuICBCdWlsZENsZWFuID0gJ2J1aWxkOmNsZWFuJyxcbiAgQnVpbGRDb21waWxlID0gJ2J1aWxkOmNvbXBpbGUnLFxuICBCdWlsZENvbXBpbGVTdmVsdGUgPSAnYnVpbGQ6Y29tcGlsZTpzdmVsdGUnLFxuICBCdWlsZENvbXBpbGVUeXBlU2NyaXB0ID0gJ2J1aWxkOmNvbXBpbGU6dHlwZXNjcmlwdCcsXG4gIEJ1aWxkU3RhdGljID0gJ2J1aWxkOnN0YXRpYycsXG4gIERldiA9ICdkZXYnLFxuICBGb3JtYXQgPSAnZm9ybWF0JyxcbiAgRm9ybWF0Q2hlY2sgPSAnZm9ybWF0OmNoZWNrJyxcbiAgTGludCA9ICdsaW50JyxcbiAgTGludEZpeCA9ICdsaW50OmZpeCcsXG4gIFB1Ymxpc2ggPSAncHVibGlzaCcsXG4gIFNwZWxsY2hlY2sgPSAnc3BlbGxjaGVjaycsXG4gIFZlcnNpb24gPSAndmVyc2lvbidcbn1cblxuaW50ZXJmYWNlIE92ZXJyaWRlTW9kdWxlPEFyZ3MgZXh0ZW5kcyB1bmtub3duW10+IHtcbiAgaW52b2tlKC4uLmFyZ3M6IEFyZ3MpOiBQcm9taXNlPE1heWJlUmV0dXJuPENsaVRhc2tSZXN1bHQ+Pjtcbn1cblxuLyoqXG4gKiBNYWluIGZ1bmN0aW9uIHRvIHJ1biB0aGUgQ0xJLiBJdCBzZXRzIHVwIHRoZSBjb21tYW5kcyB1c2luZyB0aGUgYGNvbW1hbmRlcmAgbGlicmFyeSBhbmRcbiAqIGhhbmRsZXMgdGhlIGV4ZWN1dGlvbiBvZiB0YXNrcyBsaWtlIGJ1aWxkaW5nLCBjbGVhbmluZywgbGludGluZywgc3BlbGxjaGVja2luZywgYW5kIHZlcnNpb25pbmcuXG4gKlxuICogQHBhcmFtIGFyZ3YgLSBUaGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBwYXJzZS4gRGVmYXVsdHMgdG8gYHByb2Nlc3MuYXJndmAgbWludXMgdGhlIGZpcnN0IHR3byBlbGVtZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsaShhcmd2OiBzdHJpbmdbXSA9IHByb2Nlc3MuYXJndi5zbGljZShOT0RFX1NDUklQVF9BUkdWX1NLSVBfQ09VTlQpKTogdm9pZCB7XG4gIGludm9rZUFzeW5jU2FmZWx5KCgpID0+XG4gICAgd3JhcENsaVRhc2soYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCByZWFkUGFja2FnZUpzb24oZ2V0RGlybmFtZShpbXBvcnQubWV0YS51cmwpKTtcbiAgICAgIGNvbnN0IHByb2dyYW0gPSBuZXcgQ29tbWFuZCgpO1xuXG4gICAgICBwcm9ncmFtXG4gICAgICAgIC5uYW1lKHBhY2thZ2VKc29uLm5hbWUgPz8gJyh1bmtub3duKScpXG4gICAgICAgIC5kZXNjcmlwdGlvbignQ0xJIGZvciBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQgdXRpbGl0aWVzJylcbiAgICAgICAgLnZlcnNpb24ocGFja2FnZUpzb24udmVyc2lvbiA/PyAnKHVua25vd24pJyk7XG5cbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkLCAnQnVpbGQgdGhlIHBsdWdpbicsICgpID0+IGJ1aWxkT2JzaWRpYW5QbHVnaW4oeyBtb2RlOiBCdWlsZE1vZGUuUHJvZHVjdGlvbiB9KSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5CdWlsZENsZWFuLCAnQ2xlYW4gdGhlIGRpc3QgZm9sZGVyJywgKCkgPT4gYnVpbGRDbGVhbigpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkQ29tcGlsZSwgJ0NoZWNrIGlmIGNvZGUgY29tcGlsZXMnLCAoKSA9PiBidWlsZENvbXBpbGUoKSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5CdWlsZENvbXBpbGVTdmVsdGUsICdDaGVjayBpZiBTdmVsdGUgY29kZSBjb21waWxlcycsICgpID0+IGJ1aWxkQ29tcGlsZVN2ZWx0ZSgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkQ29tcGlsZVR5cGVTY3JpcHQsICdDaGVjayBpZiBUeXBlU2NyaXB0IGNvZGUgY29tcGlsZXMnLCAoKSA9PiBidWlsZENvbXBpbGVUeXBlU2NyaXB0KCkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuQnVpbGRTdGF0aWMsICdDb3B5IHN0YXRpYyBjb250ZW50IHRvIGRpc3QnLCAoKSA9PiBidWlsZFN0YXRpYygpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkRldiwgJ0J1aWxkIHRoZSBwbHVnaW4gaW4gZGV2ZWxvcG1lbnQgbW9kZScsICgpID0+IGJ1aWxkT2JzaWRpYW5QbHVnaW4oeyBtb2RlOiBCdWlsZE1vZGUuRGV2ZWxvcG1lbnQgfSkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuRm9ybWF0LCAnRm9ybWF0IHRoZSBzb3VyY2UgY29kZScsICgpID0+IGZvcm1hdCgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkZvcm1hdENoZWNrLCAnQ2hlY2sgaWYgdGhlIHNvdXJjZSBjb2RlIGlzIGZvcm1hdHRlZCcsICgpID0+IGZvcm1hdChmYWxzZSkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuTGludCwgJ0xpbnQgdGhlIHNvdXJjZSBjb2RlJywgKCkgPT4gbGludCgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkxpbnRGaXgsICdMaW50IHRoZSBzb3VyY2UgY29kZSBhbmQgYXBwbHkgYXV0b21hdGljIGZpeGVzJywgKCkgPT4gbGludCh0cnVlKSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5QdWJsaXNoLCAnUHVibGlzaCB0byBOUE0nLCAoaXNCZXRhOiBib29sZWFuKSA9PiBwdWJsaXNoKGlzQmV0YSkpXG4gICAgICAgIC5hcmd1bWVudCgnW2lzQmV0YV0nLCAnUHVibGlzaCB0byBOUE0gYmV0YScpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuU3BlbGxjaGVjaywgJ1NwZWxsY2hlY2sgdGhlIHNvdXJjZSBjb2RlJywgKCkgPT4gc3BlbGxjaGVjaygpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLlZlcnNpb24sICdSZWxlYXNlIGEgbmV3IHZlcnNpb24nLCAodmVyc2lvblVwZGF0ZVR5cGU6IHN0cmluZykgPT4gdXBkYXRlVmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZSkpXG4gICAgICAgIC5hcmd1bWVudCgnW3ZlcnNpb25VcGRhdGVUeXBlXScsICdWZXJzaW9uIHVwZGF0ZSB0eXBlOiBtYWpvciwgbWlub3IsIHBhdGNoLCBiZXRhLCBvciB4Lnkuelstc3VmZml4XScpO1xuICAgICAgYXdhaXQgcHJvZ3JhbS5wYXJzZUFzeW5jKGFyZ3YsIHsgZnJvbTogJ3VzZXInIH0pO1xuICAgICAgcmV0dXJuIENsaVRhc2tSZXN1bHQuRG9Ob3RFeGl0KCk7XG4gICAgfSlcbiAgKTtcbn1cblxuLyoqXG4gKiBBZGRzIGEgY29tbWFuZCB0byB0aGUgQ0xJIHByb2dyYW0gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIGRlc2NyaXB0aW9uLCBhbmQgdGFzayBmdW5jdGlvbi5cbiAqXG4gKiBAcGFyYW0gcHJvZ3JhbSAtIFRoZSBgY29tbWFuZGVyYCBwcm9ncmFtIGluc3RhbmNlIHRvIHdoaWNoIHRoZSBjb21tYW5kIGlzIGFkZGVkLlxuICogQHBhcmFtIG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgY29tbWFuZC5cbiAqIEBwYXJhbSBkZXNjcmlwdGlvbiAtIEEgYnJpZWYgZGVzY3JpcHRpb24gb2Ygd2hhdCB0aGUgY29tbWFuZCBkb2VzLlxuICogQHBhcmFtIHRhc2tGbiAtIFRoZSBmdW5jdGlvbiB0byBleGVjdXRlIHdoZW4gdGhlIGNvbW1hbmQgaXMgaW52b2tlZC4gQ2FuIHJldHVybiBhIGBUYXNrUmVzdWx0YCBvciB2b2lkLlxuICogQHJldHVybnMgVGhlIGBjb21tYW5kZXJgIGNvbW1hbmQgaW5zdGFuY2UgZm9yIGZ1cnRoZXIgY2hhaW5pbmcuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1wYXJhbWV0ZXJzXG5mdW5jdGlvbiBhZGRDb21tYW5kPEFyZ3MgZXh0ZW5kcyB1bmtub3duW10+KFxuICBwcm9ncmFtOiBDb21tYW5kLFxuICBuYW1lOiBzdHJpbmcsXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcsXG4gIHRhc2tGbjogKC4uLmFyZ3M6IEFyZ3MpID0+IFByb21pc2FibGU8TWF5YmVSZXR1cm48Q2xpVGFza1Jlc3VsdD4+XG4pOiBDb21tYW5kIHtcbiAgcmV0dXJuIHByb2dyYW0uY29tbWFuZChuYW1lKVxuICAgIC5kZXNjcmlwdGlvbihkZXNjcmlwdGlvbilcbiAgICAuYWN0aW9uKCguLi5hcmdzOiBBcmdzKSA9PlxuICAgICAgd3JhcENsaVRhc2soYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBzY3JpcHRQYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoam9pbihPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLlNjcmlwdHMsIGAke25hbWUucmVwbGFjZSgnOicsICctJyl9LnRzYCkpO1xuICAgICAgICBpZiAoZXhpc3RzU3luYyhzY3JpcHRQYXRoKSkge1xuICAgICAgICAgIGNvbnN0IGRpciA9IGdldERpcm5hbWUoaW1wb3J0Lm1ldGEudXJsKTtcbiAgICAgICAgICBjb25zdCByZWxhdGl2ZVNjcmlwdFBhdGggPSByZWxhdGl2ZShkaXIsIHNjcmlwdFBhdGgpO1xuICAgICAgICAgIGNvbnN0IG1vZHVsZSA9IGF3YWl0IHRzSW1wb3J0KHJlbGF0aXZlU2NyaXB0UGF0aCwgeyBwYXJlbnRVUkw6IGltcG9ydC5tZXRhLnVybCB9KSBhcyBQYXJ0aWFsPE92ZXJyaWRlTW9kdWxlPEFyZ3M+PjtcbiAgICAgICAgICBpZiAodHlwZW9mIG1vZHVsZS5pbnZva2UgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtyZWxhdGl2ZVNjcmlwdFBhdGh9IGRvZXMgbm90IGV4cG9ydCBhbiBpbnZva2UgZnVuY3Rpb25gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG1vZHVsZS5pbnZva2UoLi4uYXJncyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYXdhaXQgdGFza0ZuKC4uLmFyZ3MpO1xuICAgICAgfSlcbiAgICApO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVVBLFNBQVMsZUFBZTtBQUN4QixTQUFTLGdCQUFnQjtBQUl6QixTQUFTLHlCQUF5QjtBQUNsQztBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLFlBQVk7QUFDckIsU0FBUyxjQUFjO0FBQ3ZCO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyx1QkFBdUI7QUFDaEMsU0FBUyxlQUFlO0FBQ3hCLFNBQVMsaUNBQWlDO0FBQzFDLFNBQVMsK0JBQStCO0FBQ3hDLFNBQVMsa0JBQWtCO0FBQzNCLFNBQVMscUJBQXFCO0FBTzlCLE1BQU0sOEJBQThCO0FBZ0M3QixTQUFTLElBQUksT0FBaUIsUUFBUSxLQUFLLE1BQU0sMkJBQTJCLEdBQVM7QUFDMUY7QUFBQSxJQUFrQixNQUNoQixZQUFZLFlBQVk7QUFDdEIsWUFBTSxjQUFjLE1BQU0sZ0JBQWdCLFdBQVcsWUFBWSxHQUFHLENBQUM7QUFDckUsWUFBTSxVQUFVLElBQUksUUFBUTtBQUU1QixjQUNHLEtBQUssWUFBWSxRQUFRLFdBQVcsRUFDcEMsWUFBWSwrQ0FBK0MsRUFDM0QsUUFBUSxZQUFZLFdBQVcsV0FBVztBQUU3QyxpQkFBVyxTQUFTLHFCQUFvQixvQkFBb0IsTUFBTSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsV0FBVyxDQUFDLENBQUM7QUFDckgsaUJBQVcsU0FBUyxnQ0FBeUIseUJBQXlCLE1BQU0sV0FBVyxDQUFDO0FBQ3hGLGlCQUFXLFNBQVMsb0NBQTJCLDBCQUEwQixNQUFNLGFBQWEsQ0FBQztBQUM3RixpQkFBVyxTQUFTLGlEQUFpQyxpQ0FBaUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNoSCxpQkFBVyxTQUFTLHlEQUFxQyxxQ0FBcUMsTUFBTSx1QkFBdUIsQ0FBQztBQUM1SCxpQkFBVyxTQUFTLGtDQUEwQiwrQkFBK0IsTUFBTSxZQUFZLENBQUM7QUFDaEcsaUJBQVcsU0FBUyxpQkFBa0Isd0NBQXdDLE1BQU0sb0JBQW9CLEVBQUUsTUFBTSxVQUFVLFlBQVksQ0FBQyxDQUFDO0FBQ3hJLGlCQUFXLFNBQVMsdUJBQXFCLDBCQUEwQixNQUFNLE9BQU8sQ0FBQztBQUNqRixpQkFBVyxTQUFTLGtDQUEwQix5Q0FBeUMsTUFBTSxPQUFPLEtBQUssQ0FBQztBQUMxRyxpQkFBVyxTQUFTLG1CQUFtQix3QkFBd0IsTUFBTSxLQUFLLENBQUM7QUFDM0UsaUJBQVcsU0FBUywwQkFBc0Isa0RBQWtELE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDNUcsaUJBQVcsU0FBUyx5QkFBc0Isa0JBQWtCLENBQUMsV0FBb0IsUUFBUSxNQUFNLENBQUMsRUFDN0YsU0FBUyxZQUFZLHFCQUFxQjtBQUM3QyxpQkFBVyxTQUFTLCtCQUF5Qiw4QkFBOEIsTUFBTSxXQUFXLENBQUM7QUFDN0YsaUJBQVcsU0FBUyx5QkFBc0IseUJBQXlCLENBQUMsc0JBQThCLGNBQWMsaUJBQWlCLENBQUMsRUFDL0gsU0FBUyx1QkFBdUIsbUVBQW1FO0FBQ3RHLFlBQU0sUUFBUSxXQUFXLE1BQU0sRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUMvQyxhQUFPLGNBQWMsVUFBVTtBQUFBLElBQ2pDLENBQUM7QUFBQSxFQUNIO0FBQ0Y7QUFZQSxTQUFTLFdBQ1AsU0FDQSxNQUNBLGFBQ0EsUUFDUztBQUNULFNBQU8sUUFBUSxRQUFRLElBQUksRUFDeEIsWUFBWSxXQUFXLEVBQ3ZCO0FBQUEsSUFBTyxJQUFJLFNBQ1YsWUFBWSxZQUFZO0FBQ3RCLFlBQU0sYUFBYSx3QkFBd0IsS0FBSywwQkFBMEIsU0FBUyxHQUFHLEtBQUssUUFBUSxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUM7QUFDbEgsVUFBSSxXQUFXLFVBQVUsR0FBRztBQUMxQixjQUFNLE1BQU0sV0FBVyxZQUFZLEdBQUc7QUFDdEMsY0FBTSxxQkFBcUIsU0FBUyxLQUFLLFVBQVU7QUFDbkQsY0FBTSxTQUFTLE1BQU0sU0FBUyxvQkFBb0IsRUFBRSxXQUFXLFlBQVksSUFBSSxDQUFDO0FBQ2hGLFlBQUksT0FBTyxPQUFPLFdBQVcsWUFBWTtBQUN2QyxnQkFBTSxJQUFJLE1BQU0sR0FBRyxrQkFBa0IscUNBQXFDO0FBQUEsUUFDNUU7QUFDQSxlQUFPLE9BQU8sT0FBTyxHQUFHLElBQUk7QUFBQSxNQUM5QjtBQUVBLGFBQU8sTUFBTSxPQUFPLEdBQUcsSUFBSTtBQUFBLElBQzdCLENBQUM7QUFBQSxFQUNIO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==
89
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2NsaS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gY2xpXG4gKiBUaGlzIG1vZHVsZSBkZWZpbmVzIGEgQ0xJIGZvciBtYW5hZ2luZyB2YXJpb3VzIHRhc2tzIHJlbGF0ZWQgdG8gT2JzaWRpYW4gcGx1Z2luIGRldmVsb3BtZW50LlxuICogSXQgbGV2ZXJhZ2VzIHRoZSBgY29tbWFuZGVyYCBsaWJyYXJ5IHRvIGRlZmluZSBjb21tYW5kcyBmb3IgYnVpbGRpbmcsIGxpbnRpbmcsIHNwZWxsY2hlY2tpbmcsXG4gKiBhbmQgdXBkYXRpbmcgdGhlIHZlcnNpb24gb2YgdGhlIHBsdWdpbi4gVGhlIENMSSBpcyBkZXNpZ25lZCB0byBiZSBmbGV4aWJsZSBhbmQgY2FuIGhhbmRsZSBib3RoXG4gKiBzeW5jaHJvbm91cyBhbmQgYXN5bmNocm9ub3VzIHRhc2tzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgdHNJbXBvcnQgfSBmcm9tICd0c3gvZXNtL2FwaSc7XG5cbmltcG9ydCB0eXBlIHsgTWF5YmVSZXR1cm4gfSBmcm9tICcuLi9UeXBlLnRzJztcblxuaW1wb3J0IHsgaW52b2tlQXN5bmNTYWZlbHkgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQge1xuICBnZXREaXJuYW1lLFxuICBqb2luLFxuICByZWxhdGl2ZVxufSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7XG4gIGJ1aWxkQ2xlYW4sXG4gIGJ1aWxkQ29tcGlsZSxcbiAgYnVpbGRDb21waWxlU3ZlbHRlLFxuICBidWlsZENvbXBpbGVUeXBlU2NyaXB0LFxuICBidWlsZFN0YXRpY1xufSBmcm9tICcuL2J1aWxkLnRzJztcbmltcG9ydCB7XG4gIENsaVRhc2tSZXN1bHQsXG4gIHdyYXBDbGlUYXNrXG59IGZyb20gJy4vQ2xpVXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgQnVpbGRNb2RlLFxuICBidWlsZE9ic2lkaWFuUGx1Z2luXG59IGZyb20gJy4vZXNidWlsZC9PYnNpZGlhblBsdWdpbkJ1aWxkZXIudHMnO1xuaW1wb3J0IHsgbGludCB9IGZyb20gJy4vRVNMaW50L0VTTGludC50cyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICcuL2Zvcm1hdC50cyc7XG5pbXBvcnQge1xuICBleGlzdHNTeW5jLFxuICBwcm9jZXNzXG59IGZyb20gJy4vTm9kZU1vZHVsZXMudHMnO1xuaW1wb3J0IHsgcmVhZFBhY2thZ2VKc29uIH0gZnJvbSAnLi9OcG0udHMnO1xuaW1wb3J0IHsgcHVibGlzaCB9IGZyb20gJy4vTnBtUHVibGlzaC50cyc7XG5pbXBvcnQgeyBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzIH0gZnJvbSAnLi9PYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLnRzJztcbmltcG9ydCB7IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlIH0gZnJvbSAnLi9Sb290LnRzJztcbmltcG9ydCB7IHNwZWxsY2hlY2sgfSBmcm9tICcuL3NwZWxsY2hlY2sudHMnO1xuaW1wb3J0IHsgdXBkYXRlVmVyc2lvbiB9IGZyb20gJy4vdmVyc2lvbi50cyc7XG5cbi8qKlxuICogVGhlIG51bWJlciBvZiBsZWFkaW5nIGFyZ3VtZW50cyB0byBza2lwIHdoZW4gcGFyc2luZyBjb21tYW5kLWxpbmUgYXJndW1lbnRzLlxuICogVGhlIGZpcnN0IHR3byBlbGVtZW50cyB0eXBpY2FsbHkgcmVwcmVzZW50IHRoZSBOb2RlLmpzIGV4ZWN1dGFibGUgYW5kIHRoZSBzY3JpcHQgcGF0aDpcbiAqIGBbXCJub2RlXCIsIFwicGF0aC90by9jbGkuY2pzXCIsIC4uLmFjdHVhbEFyZ3NdYFxuICovXG5jb25zdCBOT0RFX1NDUklQVF9BUkdWX1NLSVBfQ09VTlQgPSAyO1xuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIHRoZSBuYW1lcyBvZiB0aGUgY29tbWFuZHMgYXZhaWxhYmxlIGluIHRoZSBDTEkuXG4gKi9cbmVudW0gQ29tbWFuZE5hbWVzIHtcbiAgQnVpbGQgPSAnYnVpbGQnLFxuICBCdWlsZENsZWFuID0gJ2J1aWxkOmNsZWFuJyxcbiAgQnVpbGRDb21waWxlID0gJ2J1aWxkOmNvbXBpbGUnLFxuICBCdWlsZENvbXBpbGVTdmVsdGUgPSAnYnVpbGQ6Y29tcGlsZTpzdmVsdGUnLFxuICBCdWlsZENvbXBpbGVUeXBlU2NyaXB0ID0gJ2J1aWxkOmNvbXBpbGU6dHlwZXNjcmlwdCcsXG4gIEJ1aWxkU3RhdGljID0gJ2J1aWxkOnN0YXRpYycsXG4gIERldiA9ICdkZXYnLFxuICBGb3JtYXQgPSAnZm9ybWF0JyxcbiAgRm9ybWF0Q2hlY2sgPSAnZm9ybWF0OmNoZWNrJyxcbiAgTGludCA9ICdsaW50JyxcbiAgTGludEZpeCA9ICdsaW50OmZpeCcsXG4gIFB1Ymxpc2ggPSAncHVibGlzaCcsXG4gIFNwZWxsY2hlY2sgPSAnc3BlbGxjaGVjaycsXG4gIFZlcnNpb24gPSAndmVyc2lvbidcbn1cblxuaW50ZXJmYWNlIE92ZXJyaWRlTW9kdWxlPEFyZ3MgZXh0ZW5kcyB1bmtub3duW10+IHtcbiAgaW52b2tlKC4uLmFyZ3M6IEFyZ3MpOiBQcm9taXNlPE1heWJlUmV0dXJuPENsaVRhc2tSZXN1bHQ+Pjtcbn1cblxuLyoqXG4gKiBNYWluIGZ1bmN0aW9uIHRvIHJ1biB0aGUgQ0xJLiBJdCBzZXRzIHVwIHRoZSBjb21tYW5kcyB1c2luZyB0aGUgYGNvbW1hbmRlcmAgbGlicmFyeSBhbmRcbiAqIGhhbmRsZXMgdGhlIGV4ZWN1dGlvbiBvZiB0YXNrcyBsaWtlIGJ1aWxkaW5nLCBjbGVhbmluZywgbGludGluZywgc3BlbGxjaGVja2luZywgYW5kIHZlcnNpb25pbmcuXG4gKlxuICogQHBhcmFtIGFyZ3YgLSBUaGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBwYXJzZS4gRGVmYXVsdHMgdG8gYHByb2Nlc3MuYXJndmAgbWludXMgdGhlIGZpcnN0IHR3byBlbGVtZW50cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsaShhcmd2OiBzdHJpbmdbXSA9IHByb2Nlc3MuYXJndi5zbGljZShOT0RFX1NDUklQVF9BUkdWX1NLSVBfQ09VTlQpKTogdm9pZCB7XG4gIGludm9rZUFzeW5jU2FmZWx5KCgpID0+XG4gICAgd3JhcENsaVRhc2soYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCByZWFkUGFja2FnZUpzb24oZ2V0RGlybmFtZShpbXBvcnQubWV0YS51cmwpKTtcbiAgICAgIGNvbnN0IHByb2dyYW0gPSBuZXcgQ29tbWFuZCgpO1xuXG4gICAgICBwcm9ncmFtXG4gICAgICAgIC5uYW1lKHBhY2thZ2VKc29uLm5hbWUgPz8gJyh1bmtub3duKScpXG4gICAgICAgIC5kZXNjcmlwdGlvbignQ0xJIGZvciBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQgdXRpbGl0aWVzJylcbiAgICAgICAgLnZlcnNpb24ocGFja2FnZUpzb24udmVyc2lvbiA/PyAnKHVua25vd24pJyk7XG5cbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkLCAnQnVpbGQgdGhlIHBsdWdpbicsICgpID0+IGJ1aWxkT2JzaWRpYW5QbHVnaW4oeyBtb2RlOiBCdWlsZE1vZGUuUHJvZHVjdGlvbiB9KSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5CdWlsZENsZWFuLCAnQ2xlYW4gdGhlIGRpc3QgZm9sZGVyJywgKCkgPT4gYnVpbGRDbGVhbigpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkQ29tcGlsZSwgJ0NoZWNrIGlmIGNvZGUgY29tcGlsZXMnLCAoKSA9PiBidWlsZENvbXBpbGUoKSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5CdWlsZENvbXBpbGVTdmVsdGUsICdDaGVjayBpZiBTdmVsdGUgY29kZSBjb21waWxlcycsICgpID0+IGJ1aWxkQ29tcGlsZVN2ZWx0ZSgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkJ1aWxkQ29tcGlsZVR5cGVTY3JpcHQsICdDaGVjayBpZiBUeXBlU2NyaXB0IGNvZGUgY29tcGlsZXMnLCAoKSA9PiBidWlsZENvbXBpbGVUeXBlU2NyaXB0KCkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuQnVpbGRTdGF0aWMsICdDb3B5IHN0YXRpYyBjb250ZW50IHRvIGRpc3QnLCAoKSA9PiBidWlsZFN0YXRpYygpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkRldiwgJ0J1aWxkIHRoZSBwbHVnaW4gaW4gZGV2ZWxvcG1lbnQgbW9kZScsICgpID0+IGJ1aWxkT2JzaWRpYW5QbHVnaW4oeyBtb2RlOiBCdWlsZE1vZGUuRGV2ZWxvcG1lbnQgfSkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuRm9ybWF0LCAnRm9ybWF0IHRoZSBzb3VyY2UgY29kZScsICgpID0+IGZvcm1hdCgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkZvcm1hdENoZWNrLCAnQ2hlY2sgaWYgdGhlIHNvdXJjZSBjb2RlIGlzIGZvcm1hdHRlZCcsICgpID0+IGZvcm1hdChmYWxzZSkpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuTGludCwgJ0xpbnQgdGhlIHNvdXJjZSBjb2RlJywgKCkgPT4gbGludCgpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLkxpbnRGaXgsICdMaW50IHRoZSBzb3VyY2UgY29kZSBhbmQgYXBwbHkgYXV0b21hdGljIGZpeGVzJywgKCkgPT4gbGludCh0cnVlKSk7XG4gICAgICBhZGRDb21tYW5kKHByb2dyYW0sIENvbW1hbmROYW1lcy5QdWJsaXNoLCAnUHVibGlzaCB0byBOUE0nLCAoaXNCZXRhOiBib29sZWFuKSA9PiBwdWJsaXNoKGlzQmV0YSkpXG4gICAgICAgIC5hcmd1bWVudCgnW2lzQmV0YV0nLCAnUHVibGlzaCB0byBOUE0gYmV0YScpO1xuICAgICAgYWRkQ29tbWFuZChwcm9ncmFtLCBDb21tYW5kTmFtZXMuU3BlbGxjaGVjaywgJ1NwZWxsY2hlY2sgdGhlIHNvdXJjZSBjb2RlJywgKCkgPT4gc3BlbGxjaGVjaygpKTtcbiAgICAgIGFkZENvbW1hbmQocHJvZ3JhbSwgQ29tbWFuZE5hbWVzLlZlcnNpb24sICdSZWxlYXNlIGEgbmV3IHZlcnNpb24nLCAodmVyc2lvblVwZGF0ZVR5cGU6IHN0cmluZykgPT4gdXBkYXRlVmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZSkpXG4gICAgICAgIC5hcmd1bWVudCgnW3ZlcnNpb25VcGRhdGVUeXBlXScsICdWZXJzaW9uIHVwZGF0ZSB0eXBlOiBtYWpvciwgbWlub3IsIHBhdGNoLCBiZXRhLCBvciB4Lnkuelstc3VmZml4XScpO1xuICAgICAgYXdhaXQgcHJvZ3JhbS5wYXJzZUFzeW5jKGFyZ3YsIHsgZnJvbTogJ3VzZXInIH0pO1xuICAgICAgcmV0dXJuIENsaVRhc2tSZXN1bHQuRG9Ob3RFeGl0KCk7XG4gICAgfSlcbiAgKTtcbn1cblxuLyoqXG4gKiBBZGRzIGEgY29tbWFuZCB0byB0aGUgQ0xJIHByb2dyYW0gd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIGRlc2NyaXB0aW9uLCBhbmQgdGFzayBmdW5jdGlvbi5cbiAqXG4gKiBAcGFyYW0gcHJvZ3JhbSAtIFRoZSBgY29tbWFuZGVyYCBwcm9ncmFtIGluc3RhbmNlIHRvIHdoaWNoIHRoZSBjb21tYW5kIGlzIGFkZGVkLlxuICogQHBhcmFtIG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgY29tbWFuZC5cbiAqIEBwYXJhbSBkZXNjcmlwdGlvbiAtIEEgYnJpZWYgZGVzY3JpcHRpb24gb2Ygd2hhdCB0aGUgY29tbWFuZCBkb2VzLlxuICogQHBhcmFtIHRhc2tGbiAtIFRoZSBmdW5jdGlvbiB0byBleGVjdXRlIHdoZW4gdGhlIGNvbW1hbmQgaXMgaW52b2tlZC4gQ2FuIHJldHVybiBhIHtAbGluayBDbGlUYXNrUmVzdWx0fSBvciBgdm9pZGAuXG4gKiBAcmV0dXJucyBUaGUgYGNvbW1hbmRlcmAgY29tbWFuZCBpbnN0YW5jZSBmb3IgZnVydGhlciBjaGFpbmluZy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10eXBlLXBhcmFtZXRlcnNcbmZ1bmN0aW9uIGFkZENvbW1hbmQ8QXJncyBleHRlbmRzIHVua25vd25bXT4oXG4gIHByb2dyYW06IENvbW1hbmQsXG4gIG5hbWU6IHN0cmluZyxcbiAgZGVzY3JpcHRpb246IHN0cmluZyxcbiAgdGFza0ZuOiAoLi4uYXJnczogQXJncykgPT4gUHJvbWlzYWJsZTxNYXliZVJldHVybjxDbGlUYXNrUmVzdWx0Pj5cbik6IENvbW1hbmQge1xuICByZXR1cm4gcHJvZ3JhbS5jb21tYW5kKG5hbWUpXG4gICAgLmRlc2NyaXB0aW9uKGRlc2NyaXB0aW9uKVxuICAgIC5hY3Rpb24oKC4uLmFyZ3M6IEFyZ3MpID0+XG4gICAgICB3cmFwQ2xpVGFzayhhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNjcmlwdFBhdGggPSByZXNvbHZlUGF0aEZyb21Sb290U2FmZShqb2luKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuU2NyaXB0cywgYCR7bmFtZS5yZXBsYWNlKCc6JywgJy0nKX0udHNgKSk7XG4gICAgICAgIGlmIChleGlzdHNTeW5jKHNjcmlwdFBhdGgpKSB7XG4gICAgICAgICAgY29uc3QgZGlyID0gZ2V0RGlybmFtZShpbXBvcnQubWV0YS51cmwpO1xuICAgICAgICAgIGNvbnN0IHJlbGF0aXZlU2NyaXB0UGF0aCA9IHJlbGF0aXZlKGRpciwgc2NyaXB0UGF0aCk7XG4gICAgICAgICAgY29uc3QgbW9kdWxlID0gYXdhaXQgdHNJbXBvcnQocmVsYXRpdmVTY3JpcHRQYXRoLCB7IHBhcmVudFVSTDogaW1wb3J0Lm1ldGEudXJsIH0pIGFzIFBhcnRpYWw8T3ZlcnJpZGVNb2R1bGU8QXJncz4+O1xuICAgICAgICAgIGlmICh0eXBlb2YgbW9kdWxlLmludm9rZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3JlbGF0aXZlU2NyaXB0UGF0aH0gZG9lcyBub3QgZXhwb3J0IGFuIGludm9rZSBmdW5jdGlvbmApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gbW9kdWxlLmludm9rZSguLi5hcmdzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhd2FpdCB0YXNrRm4oLi4uYXJncyk7XG4gICAgICB9KVxuICAgICk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBVUEsU0FBUyxlQUFlO0FBQ3hCLFNBQVMsZ0JBQWdCO0FBSXpCLFNBQVMseUJBQXlCO0FBQ2xDO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsWUFBWTtBQUNyQixTQUFTLGNBQWM7QUFDdkI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLGVBQWU7QUFDeEIsU0FBUyxpQ0FBaUM7QUFDMUMsU0FBUywrQkFBK0I7QUFDeEMsU0FBUyxrQkFBa0I7QUFDM0IsU0FBUyxxQkFBcUI7QUFPOUIsTUFBTSw4QkFBOEI7QUFnQzdCLFNBQVMsSUFBSSxPQUFpQixRQUFRLEtBQUssTUFBTSwyQkFBMkIsR0FBUztBQUMxRjtBQUFBLElBQWtCLE1BQ2hCLFlBQVksWUFBWTtB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
@@ -7,12 +7,12 @@
7
7
  /**
8
8
  * Determines which dependencies should be bundled by esbuild.
9
9
  *
10
- * @returns A `Promise` that resolves to an array of dependency names to bundle.
10
+ * @returns A {@link Promise} that resolves to an array of dependency names to bundle.
11
11
  */
12
12
  export declare function getDependenciesToBundle(): Promise<string[]>;
13
13
  /**
14
14
  * Retrieves the list of dependencies that should be skipped during the bundling process.
15
15
  *
16
- * @returns A `Promise` that resolves to a `Set` of dependency names to skip.
16
+ * @returns A {@link Promise} that resolves to a {@link Set} of dependency names to skip.
17
17
  */
18
18
  export declare function getDependenciesToSkip(): Promise<Set<string>>;
@@ -92,4 +92,4 @@ export {
92
92
  getDependenciesToBundle,
93
93
  getDependenciesToSkip
94
94
  };
95
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvRGVwZW5kZW5jeS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gRGVwZW5kZW5jeVxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0aWVzIGZvciBtYW5hZ2luZyBkZXBlbmRlbmNpZXMgZHVyaW5nIHRoZSBlc2J1aWxkIHByb2Nlc3MuXG4gKiBJdCBpbmNsdWRlcyBmdW5jdGlvbnMgdG8gZGV0ZXJtaW5lIHdoaWNoIGRlcGVuZGVuY2llcyBzaG91bGQgYmUgc2tpcHBlZCBhbmQgd2hpY2hcbiAqIHNob3VsZCBiZSBidW5kbGVkLCBhcyB3ZWxsIGFzIGFuIGVzYnVpbGQgcGx1Z2luIGZvciBleHRyYWN0aW5nIGRlcGVuZGVuY2llcyB0byBidW5kbGUuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBCdWlsZE9wdGlvbnMsXG4gIFBsdWdpblxufSBmcm9tICdlc2J1aWxkJztcblxuaW1wb3J0IHsgY29udGV4dCB9IGZyb20gJ2VzYnVpbGQnO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi8uLi9FcnJvci50cyc7XG5pbXBvcnQge1xuICBnZXREaXJuYW1lLFxuICBqb2luXG59IGZyb20gJy4uLy4uL1BhdGgudHMnO1xuaW1wb3J0IHsgdHJpbVN0YXJ0IH0gZnJvbSAnLi4vLi4vU3RyaW5nLnRzJztcbmltcG9ydCB7XG4gIGJ1aWx0aW5Nb2R1bGVzLFxuICBjcmVhdGVSZXF1aXJlXG59IGZyb20gJy4uL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7IHJlYWRQYWNrYWdlSnNvbiB9IGZyb20gJy4uL05wbS50cyc7XG5pbXBvcnQgeyBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzIH0gZnJvbSAnLi4vT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy50cyc7XG5pbXBvcnQge1xuICBiYW5uZXIsXG4gIGludm9rZUVzYnVpbGRcbn0gZnJvbSAnLi9PYnNpZGlhblBsdWdpbkJ1aWxkZXIudHMnO1xuaW1wb3J0IHsgcHJlcHJvY2Vzc1BsdWdpbiB9IGZyb20gJy4vcHJlcHJvY2Vzc1BsdWdpbi50cyc7XG5cbmNvbnN0IGVzbVJlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKGltcG9ydC5tZXRhLnVybCk7XG5cbmludGVyZmFjZSBNb2R1bGVXaXRoRGVmYXVsdEV4cG9ydCB7XG4gIGRlZmF1bHQ6IHVua25vd247XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGljaCBkZXBlbmRlbmNpZXMgc2hvdWxkIGJlIGJ1bmRsZWQgYnkgZXNidWlsZC5cbiAqXG4gKiBAcmV0dXJucyBBIGBQcm9taXNlYCB0aGF0IHJlc29sdmVzIHRvIGFuIGFycmF5IG9mIGRlcGVuZGVuY3kgbmFtZXMgdG8gYnVuZGxlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RGVwZW5kZW5jaWVzVG9CdW5kbGUoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBjb25zdCBkZXBlbmRlbmNpZXNUb1NraXAgPSBhd2FpdCBnZXREZXBlbmRlbmNpZXNUb1NraXAoKTtcbiAgY29uc3QgZGVwZW5kZW5jaWVzVG9CdW5kbGUgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBjb25zdCBidWlsZE9wdGlvbnM6IEJ1aWxkT3B0aW9ucyA9IHtcbiAgICBiYW5uZXI6IHtcbiAgICAgIGpzOiBiYW5uZXJcbiAgICB9LFxuICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICBlbnRyeVBvaW50czogW2pvaW4oT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5TcmMsIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuQW55UGF0aCwgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5BbnlUcyldLFxuICAgIGZvcm1hdDogJ2NqcycsXG4gICAgbG9nTGV2ZWw6ICdpbmZvJyxcbiAgICBvdXRkaXI6ICdub3RoaW5nLXdpbGwtYmUtd3JpdHRlbi1vbi1kaXNrLXNvLXRoaXMtZG9lcy1ub3QtbWF0dGVyJyxcbiAgICBwbGF0Zm9ybTogJ25vZGUnLFxuICAgIHBsdWdpbnM6IFtcbiAgICAgIHByZXByb2Nlc3NQbHVnaW4oKSxcbiAgICAgIGV4dHJhY3REZXBlbmRlbmNpZXNUb0J1bmRsZVBsdWdpbihkZXBlbmRlbmNpZXNUb1NraXAsIGRlcGVuZGVuY2llc1RvQnVuZGxlKVxuICAgIF0sXG4gICAgc291cmNlbWFwOiAnaW5saW5lJyxcbiAgICB0YXJnZXQ6ICdFU05leHQnLFxuICAgIHRyZWVTaGFraW5nOiB0cnVlLFxuICAgIHdyaXRlOiBmYWxzZVxuICB9O1xuXG4gIGNvbnN0IGJ1aWxkQ29udGV4dCA9IGF3YWl0IGNvbnRleHQoYnVpbGRPcHRpb25zKTtcbiAgYXdhaXQgaW52b2tlRXNidWlsZChidWlsZENvbnRleHQsIHRydWUpO1xuICByZXR1cm4gQXJyYXkuZnJvbShkZXBlbmRlbmNpZXNUb0J1bmRsZSkuc29ydCgpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgbGlzdCBvZiBkZXBlbmRlbmNpZXMgdGhhdCBzaG91bGQgYmUgc2tpcHBlZCBkdXJpbmcgdGhlIGJ1bmRsaW5nIHByb2Nlc3MuXG4gKlxuICogQHJldHVybnMgQSBgUHJvbWlzZWAgdGhhdCByZXNvbHZlcyB0byBhIGBTZXRgIG9mIGRlcGVuZGVuY3kgbmFtZXMgdG8gc2tpcC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldERlcGVuZGVuY2llc1RvU2tpcCgpOiBQcm9taXNlPFNldDxzdHJpbmc+PiB7XG4gIGNvbnN0IHBhY2thZ2VKc29uID0gYXdhaXQgcmVhZFBhY2thZ2VKc29uKGdldERpcm5hbWUoaW1wb3J0Lm1ldGEudXJsKSk7XG4gIGNvbnN0IGRlcGVuZGVuY2llc1RvU2tpcCA9IG5ldyBTZXQ8c3RyaW5nPihbLi4uYnVpbHRpbk1vZHVsZXMsIC4uLk9iamVjdC5rZXlzKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcyA/PyB7fSkuZmlsdGVyKGNhblNraXBGcm9tQnVuZGxpbmcpXSk7XG4gIHJldHVybiBkZXBlbmRlbmNpZXNUb1NraXA7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbW9kdWxlIGNhbiBiZSBza2lwcGVkIGZyb20gYnVuZGxpbmcuXG4gKlxuICogQHBhcmFtIG1vZHVsZU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbW9kdWxlLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgbW9kdWxlIGNhbiBiZSBza2lwcGVkIGZyb20gYnVuZGxpbmcuXG4gKi9cbmZ1bmN0aW9uIGNhblNraXBGcm9tQnVuZGxpbmcobW9kdWxlTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmIChtb2R1bGVOYW1lLnN0YXJ0c1dpdGgoJ0B0eXBlcy8nKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKG1vZHVsZU5hbWUuc3RhcnRzV2l0aCgnb2JzaWRpYW4nKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKG1vZHVsZU5hbWUgPT09ICdlc2J1aWxkJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBtb2R1bGUgPSBlc21SZXF1aXJlKG1vZHVsZU5hbWUpIGFzIE1vZHVsZVdpdGhEZWZhdWx0RXhwb3J0O1xuICAgIHJldHVybiAhbW9kdWxlLmRlZmF1bHQ7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gZXNidWlsZCBwbHVnaW4gdGhhdCBpZGVudGlmaWVzIHdoaWNoIGRlcGVuZGVuY2llcyBzaG91bGQgYmUgYnVuZGxlZC5cbiAqXG4gKiBAcGFyYW0gZGVwZW5kZW5jaWVzVG9Ta2lwIC0gQSBzZXQgb2YgZGVwZW5kZW5jeSBuYW1lcyB0aGF0IHNob3VsZCBiZSBza2lwcGVkIGR1cmluZyBidW5kbGluZy5cbiAqIEBwYXJhbSBkZXBlbmRlbmNpZXNUb0J1bmRsZSAtIEEgc2V0IHdoZXJlIHRoZSBuYW1lcyBvZiBkZXBlbmRlbmNpZXMgdG8gYmUgYnVuZGxlZCB3aWxsIGJlIGFkZGVkLlxuICogQHJldHVybnMgQW4gZXNidWlsZCBgUGx1Z2luYCBvYmplY3QgdGhhdCBleHRyYWN0cyBkZXBlbmRlbmNpZXMgdG8gYnVuZGxlLlxuICovXG5mdW5jdGlvbiBleHRyYWN0RGVwZW5kZW5jaWVzVG9CdW5kbGVQbHVnaW4oZGVwZW5kZW5jaWVzVG9Ta2lwOiBTZXQ8c3RyaW5nPiwgZGVwZW5kZW5jaWVzVG9CdW5kbGU6IFNldDxzdHJpbmc+KTogUGx1Z2luIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndGVzdCcsXG4gICAgc2V0dXAoYnVpbGQpOiB2b2lkIHtcbiAgICAgIGJ1aWxkLm9uUmVzb2x2ZSh7IGZpbHRlcjogL15bXi4vXS8gfSwgKGFyZ3MpID0+IHtcbiAgICAgICAgaWYgKCFhcmdzLmltcG9ydGVyLmVuZHNXaXRoKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRHRzRXh0ZW5zaW9uKSkge1xuICAgICAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSB0cmltU3RhcnQoYXJncy5wYXRoLnNwbGl0KCcvJylbMF0gPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignV3JvbmcgcGF0aCcpKSwgJ25vZGU6Jyk7XG4gICAgICAgICAgaWYgKCFkZXBlbmRlbmNpZXNUb1NraXAuaGFzKGFyZ3MucGF0aCkgJiYgIWRlcGVuZGVuY2llc1RvU2tpcC5oYXMobW9kdWxlTmFtZSkpIHtcbiAgICAgICAgICAgIGRlcGVuZGVuY2llc1RvQnVuZGxlLmFkZChhcmdzLnBhdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBleHRlcm5hbDogdHJ1ZSwgcGF0aDogYXJncy5wYXRoIH07XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBWUEsU0FBUyxlQUFlO0FBRXhCLFNBQVMsdUJBQXVCO0FBQ2hDO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxP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
95
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvRGVwZW5kZW5jeS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gRGVwZW5kZW5jeVxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0aWVzIGZvciBtYW5hZ2luZyBkZXBlbmRlbmNpZXMgZHVyaW5nIHRoZSBlc2J1aWxkIHByb2Nlc3MuXG4gKiBJdCBpbmNsdWRlcyBmdW5jdGlvbnMgdG8gZGV0ZXJtaW5lIHdoaWNoIGRlcGVuZGVuY2llcyBzaG91bGQgYmUgc2tpcHBlZCBhbmQgd2hpY2hcbiAqIHNob3VsZCBiZSBidW5kbGVkLCBhcyB3ZWxsIGFzIGFuIGVzYnVpbGQgcGx1Z2luIGZvciBleHRyYWN0aW5nIGRlcGVuZGVuY2llcyB0byBidW5kbGUuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBCdWlsZE9wdGlvbnMsXG4gIFBsdWdpblxufSBmcm9tICdlc2J1aWxkJztcblxuaW1wb3J0IHsgY29udGV4dCB9IGZyb20gJ2VzYnVpbGQnO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi8uLi9FcnJvci50cyc7XG5pbXBvcnQge1xuICBnZXREaXJuYW1lLFxuICBqb2luXG59IGZyb20gJy4uLy4uL1BhdGgudHMnO1xuaW1wb3J0IHsgdHJpbVN0YXJ0IH0gZnJvbSAnLi4vLi4vU3RyaW5nLnRzJztcbmltcG9ydCB7XG4gIGJ1aWx0aW5Nb2R1bGVzLFxuICBjcmVhdGVSZXF1aXJlXG59IGZyb20gJy4uL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7IHJlYWRQYWNrYWdlSnNvbiB9IGZyb20gJy4uL05wbS50cyc7XG5pbXBvcnQgeyBPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzIH0gZnJvbSAnLi4vT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy50cyc7XG5pbXBvcnQge1xuICBiYW5uZXIsXG4gIGludm9rZUVzYnVpbGRcbn0gZnJvbSAnLi9PYnNpZGlhblBsdWdpbkJ1aWxkZXIudHMnO1xuaW1wb3J0IHsgcHJlcHJvY2Vzc1BsdWdpbiB9IGZyb20gJy4vcHJlcHJvY2Vzc1BsdWdpbi50cyc7XG5cbmNvbnN0IGVzbVJlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKGltcG9ydC5tZXRhLnVybCk7XG5cbmludGVyZmFjZSBNb2R1bGVXaXRoRGVmYXVsdEV4cG9ydCB7XG4gIGRlZmF1bHQ6IHVua25vd247XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGljaCBkZXBlbmRlbmNpZXMgc2hvdWxkIGJlIGJ1bmRsZWQgYnkgZXNidWlsZC5cbiAqXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIGFuIGFycmF5IG9mIGRlcGVuZGVuY3kgbmFtZXMgdG8gYnVuZGxlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RGVwZW5kZW5jaWVzVG9CdW5kbGUoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBjb25zdCBkZXBlbmRlbmNpZXNUb1NraXAgPSBhd2FpdCBnZXREZXBlbmRlbmNpZXNUb1NraXAoKTtcbiAgY29uc3QgZGVwZW5kZW5jaWVzVG9CdW5kbGUgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBjb25zdCBidWlsZE9wdGlvbnM6IEJ1aWxkT3B0aW9ucyA9IHtcbiAgICBiYW5uZXI6IHtcbiAgICAgIGpzOiBiYW5uZXJcbiAgICB9LFxuICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICBlbnRyeVBvaW50czogW2pvaW4oT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5TcmMsIE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuQW55UGF0aCwgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5BbnlUcyldLFxuICAgIGZvcm1hdDogJ2NqcycsXG4gICAgbG9nTGV2ZWw6ICdpbmZvJyxcbiAgICBvdXRkaXI6ICdub3RoaW5nLXdpbGwtYmUtd3JpdHRlbi1vbi1kaXNrLXNvLXRoaXMtZG9lcy1ub3QtbWF0dGVyJyxcbiAgICBwbGF0Zm9ybTogJ25vZGUnLFxuICAgIHBsdWdpbnM6IFtcbiAgICAgIHByZXByb2Nlc3NQbHVnaW4oKSxcbiAgICAgIGV4dHJhY3REZXBlbmRlbmNpZXNUb0J1bmRsZVBsdWdpbihkZXBlbmRlbmNpZXNUb1NraXAsIGRlcGVuZGVuY2llc1RvQnVuZGxlKVxuICAgIF0sXG4gICAgc291cmNlbWFwOiAnaW5saW5lJyxcbiAgICB0YXJnZXQ6ICdFU05leHQnLFxuICAgIHRyZWVTaGFraW5nOiB0cnVlLFxuICAgIHdyaXRlOiBmYWxzZVxuICB9O1xuXG4gIGNvbnN0IGJ1aWxkQ29udGV4dCA9IGF3YWl0IGNvbnRleHQoYnVpbGRPcHRpb25zKTtcbiAgYXdhaXQgaW52b2tlRXNidWlsZChidWlsZENvbnRleHQsIHRydWUpO1xuICByZXR1cm4gQXJyYXkuZnJvbShkZXBlbmRlbmNpZXNUb0J1bmRsZSkuc29ydCgpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgbGlzdCBvZiBkZXBlbmRlbmNpZXMgdGhhdCBzaG91bGQgYmUgc2tpcHBlZCBkdXJpbmcgdGhlIGJ1bmRsaW5nIHByb2Nlc3MuXG4gKlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byBhIHtAbGluayBTZXR9IG9mIGRlcGVuZGVuY3kgbmFtZXMgdG8gc2tpcC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldERlcGVuZGVuY2llc1RvU2tpcCgpOiBQcm9taXNlPFNldDxzdHJpbmc+PiB7XG4gIGNvbnN0IHBhY2thZ2VKc29uID0gYXdhaXQgcmVhZFBhY2thZ2VKc29uKGdldERpcm5hbWUoaW1wb3J0Lm1ldGEudXJsKSk7XG4gIGNvbnN0IGRlcGVuZGVuY2llc1RvU2tpcCA9IG5ldyBTZXQ8c3RyaW5nPihbLi4uYnVpbHRpbk1vZHVsZXMsIC4uLk9iamVjdC5rZXlzKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcyA/PyB7fSkuZmlsdGVyKGNhblNraXBGcm9tQnVuZGxpbmcpXSk7XG4gIHJldHVybiBkZXBlbmRlbmNpZXNUb1NraXA7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbW9kdWxlIGNhbiBiZSBza2lwcGVkIGZyb20gYnVuZGxpbmcuXG4gKlxuICogQHBhcmFtIG1vZHVsZU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgbW9kdWxlLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgbW9kdWxlIGNhbiBiZSBza2lwcGVkIGZyb20gYnVuZGxpbmcuXG4gKi9cbmZ1bmN0aW9uIGNhblNraXBGcm9tQnVuZGxpbmcobW9kdWxlTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmIChtb2R1bGVOYW1lLnN0YXJ0c1dpdGgoJ0B0eXBlcy8nKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKG1vZHVsZU5hbWUuc3RhcnRzV2l0aCgnb2JzaWRpYW4nKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKG1vZHVsZU5hbWUgPT09ICdlc2J1aWxkJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBtb2R1bGUgPSBlc21SZXF1aXJlKG1vZHVsZU5hbWUpIGFzIE1vZHVsZVdpdGhEZWZhdWx0RXhwb3J0O1xuICAgIHJldHVybiAhbW9kdWxlLmRlZmF1bHQ7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gZXNidWlsZCBwbHVnaW4gdGhhdCBpZGVudGlmaWVzIHdoaWNoIGRlcGVuZGVuY2llcyBzaG91bGQgYmUgYnVuZGxlZC5cbiAqXG4gKiBAcGFyYW0gZGVwZW5kZW5jaWVzVG9Ta2lwIC0gQSBzZXQgb2YgZGVwZW5kZW5jeSBuYW1lcyB0aGF0IHNob3VsZCBiZSBza2lwcGVkIGR1cmluZyBidW5kbGluZy5cbiAqIEBwYXJhbSBkZXBlbmRlbmNpZXNUb0J1bmRsZSAtIEEgc2V0IHdoZXJlIHRoZSBuYW1lcyBvZiBkZXBlbmRlbmNpZXMgdG8gYmUgYnVuZGxlZCB3aWxsIGJlIGFkZGVkLlxuICogQHJldHVybnMgQW4gZXNidWlsZCBgUGx1Z2luYCBvYmplY3QgdGhhdCBleHRyYWN0cyBkZXBlbmRlbmNpZXMgdG8gYnVuZGxlLlxuICovXG5mdW5jdGlvbiBleHRyYWN0RGVwZW5kZW5jaWVzVG9CdW5kbGVQbHVnaW4oZGVwZW5kZW5jaWVzVG9Ta2lwOiBTZXQ8c3RyaW5nPiwgZGVwZW5kZW5jaWVzVG9CdW5kbGU6IFNldDxzdHJpbmc+KTogUGx1Z2luIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndGVzdCcsXG4gICAgc2V0dXAoYnVpbGQpOiB2b2lkIHtcbiAgICAgIGJ1aWxkLm9uUmVzb2x2ZSh7IGZpbHRlcjogL15bXi4vXS8gfSwgKGFyZ3MpID0+IHtcbiAgICAgICAgaWYgKCFhcmdzLmltcG9ydGVyLmVuZHNXaXRoKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRHRzRXh0ZW5zaW9uKSkge1xuICAgICAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSB0cmltU3RhcnQoYXJncy5wYXRoLnNwbGl0KCcvJylbMF0gPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignV3JvbmcgcGF0aCcpKSwgJ25vZGU6Jyk7XG4gICAgICAgICAgaWYgKCFkZXBlbmRlbmNpZXNUb1NraXAuaGFzKGFyZ3MucGF0aCkgJiYgIWRlcGVuZGVuY2llc1RvU2tpcC5oYXMobW9kdWxlTmFtZSkpIHtcbiAgICAgICAgICAgIGRlcGVuZGVuY2llc1RvQnVuZGxlLmFkZChhcmdzLnBhdGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBleHRlcm5hbDogdHJ1ZSwgcGF0aDogYXJncy5wYXRoIH07XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBWUEsU0FBUyxlQUFlO0FBRXhCLFNBQVMsdUJBQXVCO0FBQ2hDO0FBQUEsRUFD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
@@ -44,7 +44,7 @@ export interface BuildObsidianPluginOptions {
44
44
  * Builds the Obsidian plugin based on the specified mode and configuration directory.
45
45
  *
46
46
  * @param options - The parameters for building the plugin.
47
- * @returns A promise that resolves to a `TaskResult` indicating the success or failure of the build.
47
+ * @returns A promise that resolves to a {@link CliTaskResult} indicating the success or failure of the build.
48
48
  */
49
49
  export declare function buildObsidianPlugin(options: BuildObsidianPluginOptions): Promise<CliTaskResult>;
50
50
  /**
@@ -52,6 +52,6 @@ export declare function buildObsidianPlugin(options: BuildObsidianPluginOptions)
52
52
  *
53
53
  * @param buildContext - The build context generated by esbuild.
54
54
  * @param isProductionBuild - A boolean indicating whether the build is a production build.
55
- * @returns A promise that resolves to a `TaskResult` indicating the success or failure of the build.
55
+ * @returns A promise that resolves to a {@link CliTaskResult} indicating the success or failure of the build.
56
56
  */
57
57
  export declare function invokeEsbuild(buildContext: BuildContext, isProductionBuild: boolean): Promise<CliTaskResult>;
@@ -143,4 +143,4 @@ export {
143
143
  buildObsidianPlugin,
144
144
  invokeEsbuild
145
145
  };
146
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvT2JzaWRpYW5QbHVnaW5CdWlsZGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBPYnNpZGlhblBsdWdpbkJ1aWxkZXJcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGZ1bmN0aW9uYWxpdHkgdG8gYnVpbGQgYW5kIGJ1bmRsZSBhbiBPYnNpZGlhbiBwbHVnaW4gdXNpbmcgZXNidWlsZC5cbiAqIEl0IGluY2x1ZGVzIGZ1bmN0aW9ucyB0byBoYW5kbGUgdGhlIGJ1aWxkIHByb2Nlc3MgYmFzZWQgb24gZGlmZmVyZW50IGJ1aWxkIG1vZGVzIChkZXZlbG9wbWVudCBvciBwcm9kdWN0aW9uKSxcbiAqIGFuZCBpdCBzZXRzIHVwIHZhcmlvdXMgZXNidWlsZCBwbHVnaW5zIHRvIHByZXByb2Nlc3MsIGxpbnQsIGZpeCBzb3VyY2UgbWFwcywgYW5kIGNvcHkgZmlsZXMgdG8gdGhlIE9ic2lkaWFuIHBsdWdpbnMgZm9sZGVyLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgQnVpbGRDb250ZXh0LFxuICBCdWlsZE9wdGlvbnMsXG4gIFBsdWdpblxufSBmcm9tICdlc2J1aWxkJztcblxuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAnZG90ZW52JztcbmltcG9ydCB7IGNvbnRleHQgfSBmcm9tICdlc2J1aWxkJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQteC9uby1yZW5hbWUtZGVmYXVsdFxuaW1wb3J0IHNhc3NQbHVnaW5fIGZyb20gJ2VzYnVpbGQtc2Fzcy1wbHVnaW4nO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi8uLi9FcnJvci50cyc7XG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uLy4uL29ic2lkaWFuL1BsdWdpbi9PYnNpZGlhblBsdWdpblJlcG9QYXRocy50cyc7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnLi4vLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBidWlsZENvbXBpbGUgfSBmcm9tICcuLi9idWlsZC50cyc7XG5pbXBvcnQgeyBDbGlUYXNrUmVzdWx0IH0gZnJvbSAnLi4vQ2xpVXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgYnVpbHRpbk1vZHVsZXMsXG4gIGNwLFxuICBleGlzdHNTeW5jLFxuICBta2RpcixcbiAgcHJvY2VzcyxcbiAgcm0sXG4gIHdyaXRlRmlsZVxufSBmcm9tICcuLi9Ob2RlTW9kdWxlcy50cyc7XG5pbXBvcnQgeyByZWFkUGFja2FnZUpzb24gfSBmcm9tICcuLi9OcG0udHMnO1xuaW1wb3J0IHsgcmVzb2x2ZVBhdGhGcm9tUm9vdCB9IGZyb20gJy4uL1Jvb3QudHMnO1xuaW1wb3J0IHsgY29weVRvT2JzaWRpYW5QbHVnaW5zRm9sZGVyUGx1Z2luIH0gZnJvbSAnLi9jb3B5VG9PYnNpZGlhblBsdWdpbnNGb2xkZXJQbHVnaW4udHMnO1xuaW1wb3J0IHsgY3VzdG9tRXNidWlsZE9wdGlvbnNQbHVnaW4gfSBmcm9tICcuL2N1c3RvbUVzYnVpbGRPcHRpb25zUGx1Z2luLnRzJztcbmltcG9ydCB7IGZpeEVzbVBsdWdpbiB9IGZyb20gJy4vZml4RXNtUGx1Z2luLnRzJztcbmltcG9ydCB7IGZpeFNvdXJjZU1hcHNQbHVnaW4gfSBmcm9tICcuL2ZpeFNvdXJjZU1hcHNQbHVnaW4udHMnO1xuaW1wb3J0IHsgcHJlcHJvY2Vzc1BsdWdpbiB9IGZyb20gJy4vcHJlcHJvY2Vzc1BsdWdpbi50cyc7XG5pbXBvcnQgeyByZW5hbWVDc3NQbHVnaW4gfSBmcm9tICcuL3JlbmFtZUNzc1BsdWdpbi50cyc7XG5pbXBvcnQgeyBzdmVsdGVXcmFwcGVyUGx1Z2luIH0gZnJvbSAnLi9zdmVsdGVXcmFwcGVyUGx1Z2luLnRzJztcblxuY29uc3Qgc2Fzc1BsdWdpbiA9ICgnZGVmYXVsdCcgaW4gc2Fzc1BsdWdpbl8gPyBzYXNzUGx1Z2luXy5kZWZhdWx0IDogc2Fzc1BsdWdpbl8pIGFzIHVua25vd24gYXMgdHlwZW9mIHNhc3NQbHVnaW5fLmRlZmF1bHQ7XG5cbi8qKlxuICogRW51bWVyYXRpb24gcmVwcmVzZW50aW5nIHRoZSBidWlsZCBtb2Rlcy5cbiAqL1xuZXhwb3J0IGVudW0gQnVpbGRNb2RlIHtcbiAgLyoqIERldmVsb3BtZW50IG1vZGUgZm9yIGJ1aWxkaW5nIHRoZSBwbHVnaW4gKi9cbiAgRGV2ZWxvcG1lbnQsXG4gIC8qKiBQcm9kdWN0aW9uIG1vZGUgZm9yIGJ1aWxkaW5nIHRoZSBwbHVnaW4gKi9cbiAgUHJvZHVjdGlvblxufVxuXG4vKipcbiAqIEJhbm5lciB0ZXh0IHRvIGJlIGluY2x1ZGVkIGF0IHRoZSB0b3Agb2YgdGhlIGdlbmVyYXRlZCBmaWxlcy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhbm5lciA9IGAvKlxuVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgRVNCVUlMRFxuaWYgeW91IHdhbnQgdG8gdmlldyB0aGUgc291cmNlLCBwbGVhc2UgdmlzaXQgdGhlIGdpdGh1YiByZXBvc2l0b3J5IG9mIHRoaXMgcGx1Z2luXG4qL1xuYDtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBidWlsZGluZyBhbiBPYnNpZGlhbiBwbHVnaW4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRPYnNpZGlhblBsdWdpbk9wdGlvbnMge1xuICAvKipcbiAgICogQ3VzdG9tIGVzYnVpbGQgcGx1Z2lucyB0byBiZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgcHJvY2Vzcy5cbiAgICovXG4gIGN1c3RvbUVzYnVpbGRQbHVnaW5zPzogUGx1Z2luW107XG5cbiAgLyoqXG4gICAqIEN1c3RvbWl6ZXMgdGhlIGVzYnVpbGQgb3B0aW9ucy5cbiAgICovXG4gIGN1c3RvbWl6ZUVzYnVpbGRPcHRpb25zPyhvcHRpb25zOiBCdWlsZE9wdGlvbnMpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVpbGQgbW9kZSwgZWl0aGVyIERldmVsb3BtZW50IG9yIFByb2R1Y3Rpb25cbiAgICovXG4gIG1vZGU6IEJ1aWxkTW9kZTtcblxuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSBmb3IgT2JzaWRpYW4gY29uZmlndXJhdGlvbi4gRGVmYXVsdHMgdG8gdGhlIGBPQlNJRElBTl9DT05GSUdfRElSYCBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICovXG4gIG9ic2lkaWFuQ29uZmlnRGlyPzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgT2JzaWRpYW5QbHVnaW5CdWlsZGVyRW52IHtcbiAgT0JTSURJQU5fQ09ORklHX0RJUjogc3RyaW5nO1xufVxuXG4vKipcbiAqIEJ1aWxkcyB0aGUgT2JzaWRpYW4gcGx1Z2luIGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbW9kZSBhbmQgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgcGFyYW1ldGVycyBmb3IgYnVpbGRpbmcgdGhlIHBsdWdpbi5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgYFRhc2tSZXN1bHRgIGluZGljYXRpbmcgdGhlIHN1Y2Nlc3Mgb3IgZmFpbHVyZSBvZiB0aGUgYnVpbGQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBidWlsZE9ic2lkaWFuUGx1Z2luKG9wdGlvbnM6IEJ1aWxkT2JzaWRpYW5QbHVnaW5PcHRpb25zKTogUHJvbWlzZTxDbGlUYXNrUmVzdWx0PiB7XG4gIGF3YWl0IGJ1aWxkQ29tcGlsZSgpO1xuICBjb25maWcoKTtcbiAgY29uc3Qgb2JzaWRpYW5QbHVnaW5CdWlsZGVyRW52ID0gcHJvY2Vzcy5lbnYgYXMgUGFydGlhbDxPYnNpZGlhblBsdWdpbkJ1aWxkZXJFbnY+O1xuXG4gIGNvbnN0IG9ic2lkaWFuQ29uZmlnRGlyID0gb3B0aW9ucy5vYnNpZGlhbkNvbmZpZ0RpciA/PyBvYnNpZGlhblBsdWdpbkJ1aWxkZXJFbnYuT0JTSURJQU5fQ09ORklHX0RJUiA/PyAnJztcbiAgY29uc3QgaXNQcm9kdWN0aW9uQnVpbGQgPSBvcHRpb25zLm1vZGUgPT09IEJ1aWxkTW9kZS5Qcm9kdWN0aW9uO1xuXG4gIGNvbnN0IGRpc3REaXIgPSByZXNvbHZlUGF0aEZyb21Sb290KGlzUHJvZHVjdGlvbkJ1aWxkID8gT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdEJ1aWxkIDogT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdERldik7XG4gIGlmICghZGlzdERpcikge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGRldGVybWluZSB0aGUgZGlzdCBkaXJlY3RvcnknKTtcbiAgfVxuXG4gIGlmIChleGlzdHNTeW5jKGRpc3REaXIpKSB7XG4gICAgYXdhaXQgcm0oZGlzdERpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gIH1cbiAgYXdhaXQgbWtkaXIoZGlzdERpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cbiAgY29uc3QgZGlzdEZpbGVOYW1lcyA9IFtcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5NYW5pZmVzdEpzb25cbiAgXTtcbiAgaWYgKCFpc1Byb2R1Y3Rpb25CdWlsZCkge1xuICAgIGF3YWl0IHdyaXRlRmlsZShqb2luKGRpc3REaXIsIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkhvdFJlbG9hZCksICcnLCAndXRmLTgnKTtcbiAgfVxuXG4gIGZvciAoY29uc3QgZmlsZU5hbWUgb2YgZGlzdEZpbGVOYW1lcykge1xuICAgIGNvbnN0IGxvY2FsRmlsZSA9IHJlc29sdmVQYXRoRnJvbVJvb3QoZmlsZU5hbWUpO1xuICAgIGlmICghbG9jYWxGaWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvdWxkIG5vdCBkZXRlcm1pbmUgdGhlIGxvY2FsIGZpbGUgZm9yICR7ZmlsZU5hbWV9YCk7XG4gICAgfVxuICAgIGNvbnN0IGRpc3RGaWxlID0gam9pbihkaXN0RGlyLCBmaWxlTmFtZSk7XG5cbiAgICBpZiAoZXhpc3RzU3luYyhsb2NhbEZpbGUpKSB7XG4gICAgICBhd2FpdCBjcChsb2NhbEZpbGUsIGRpc3RGaWxlKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkaXN0UGF0aCA9IGpvaW4oZGlzdERpciwgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFpbkpzKTtcbiAgY29uc3QgY3NzUGF0aCA9IGpvaW4oZGlzdERpciwgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuU3R5bGVzQ3NzKTtcblxuICBjb25zdCBwYWNrYWdlSnNvbiA9IGF3YWl0IHJlYWRQYWNrYWdlSnNvbigpO1xuICBjb25zdCBwbHVnaW5OYW1lID0gcGFja2FnZUpzb24ubmFtZSA/PyAnKHVua25vd24pJztcblxuICBjb25zdCBidWlsZE9wdGlvbnM6IEJ1aWxkT3B0aW9ucyA9IHtcbiAgICBiYW5uZXI6IHtcbiAgICAgIGpzOiBiYW5uZXJcbiAgICB9LFxuICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICBjb25kaXRpb25zOiBbJ2Jyb3dzZXInXSxcbiAgICBlbnRyeVBvaW50czogW1xuICAgICAgcmVzb2x2ZVBhdGhGcm9tUm9vdChqb2luKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLlNyYywgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFpblRzKSlcbiAgICAgICAgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ291bGQgbm90IGRldGVybWluZSB0aGUgZW50cnkgcG9pbnQgZm9yIHRoZSBwbHVnaW4nKSlcbiAgICBdLFxuICAgIGV4dGVybmFsOiBbXG4gICAgICAnb2JzaWRpYW4nLFxuICAgICAgJ2VsZWN0cm9uJyxcbiAgICAgICdAY29kZW1pcnJvci9hdXRvY29tcGxldGUnLFxuICAgICAgJ0Bjb2RlbWlycm9yL2NvbGxhYicsXG4gICAgICAnQGNvZGVtaXJyb3IvY29tbWFuZHMnLFxuICAgICAgJ0Bjb2RlbWlycm9yL2xhbmd1YWdlJyxcbiAgICAgICdAY29kZW1pcnJvci9saW50JyxcbiAgICAgICdAY29kZW1pcnJvci9zZWFyY2gnLFxuICAgICAgJ0Bjb2RlbWlycm9yL3N0YXRlJyxcbiAgICAgICdAY29kZW1pcnJvci92aWV3JyxcbiAgICAgICdAbGV6ZXIvY29tbW9uJyxcbiAgICAgICdAbGV6ZXIvaGlnaGxpZ2h0JyxcbiAgICAgICdAbGV6ZXIvbHInLFxuICAgICAgJ2VzYnVpbGQnLFxuICAgICAgJ2VzbGludCcsXG4gICAgICAuLi5idWlsdGluTW9kdWxlc1xuICAgIF0sXG4gICAgZm9ybWF0OiAnY2pzJyxcbiAgICBsb2dMZXZlbDogJ2luZm8nLFxuICAgIG1pbmlmeTogaXNQcm9kdWN0aW9uQnVpbGQsXG4gICAgb3V0ZmlsZTogZGlzdFBhdGgsXG4gICAgcGxhdGZvcm06ICdub2RlJyxcbiAgICBwbHVnaW5zOiBbXG4gICAgICBjdXN0b21Fc2J1aWxkT3B0aW9uc1BsdWdpbihvcHRpb25zLmN1c3RvbWl6ZUVzYnVpbGRPcHRpb25zPy5iaW5kKG9wdGlvbnMpKSxcbiAgICAgIHN2ZWx0ZVdyYXBwZXJQbHVnaW4oaXNQcm9kdWN0aW9uQnVpbGQpLFxuICAgICAgc2Fzc1BsdWdpbih7XG4gICAgICAgIHNvdXJjZU1hcDogIWlzUHJvZHVjdGlvbkJ1aWxkXG4gICAgICB9KSxcbiAgICAgIHJlbmFtZUNzc1BsdWdpbihkaXN0RGlyKSxcbiAgICAgIHByZXByb2Nlc3NQbHVnaW4oKSxcbiAgICAgIGZpeEVzbVBsdWdpbigpLFxuICAgICAgZml4U291cmNlTWFwc1BsdWdpbihpc1Byb2R1Y3Rpb25CdWlsZCwgW2Rpc3RQYXRoLCBjc3NQYXRoXSwgcGx1Z2luTmFtZSksXG4gICAgICAuLi5vcHRpb25zLmN1c3RvbUVzYnVpbGRQbHVnaW5zID8/IFtdLFxuICAgICAgY29weVRvT2JzaWRpYW5QbHVnaW5zRm9sZGVyUGx1Z2luKGlzUHJvZHVjdGlvbkJ1aWxkLCBkaXN0RGlyLCBvYnNpZGlhbkNvbmZpZ0RpciwgcGx1Z2luTmFtZSlcbiAgICBdLFxuICAgIHNvdXJjZW1hcDogaXNQcm9kdWN0aW9uQnVpbGQgPyBmYWxzZSA6ICdpbmxpbmUnLFxuICAgIHRhcmdldDogJ2VzbmV4dCcsXG4gICAgdHJlZVNoYWtpbmc6IHRydWVcbiAgfTtcblxuICBjb25zdCBidWlsZENvbnRleHQgPSBhd2FpdCBjb250ZXh0KGJ1aWxkT3B0aW9ucyk7XG4gIHJldHVybiBhd2FpdCBpbnZva2VFc2J1aWxkKGJ1aWxkQ29udGV4dCwgaXNQcm9kdWN0aW9uQnVpbGQpO1xufVxuXG4vKipcbiAqIEludm9rZXMgdGhlIGJ1aWxkIHByb2Nlc3Mgd2l0aCB0aGUgcHJvdmlkZWQgYnVpbGQgY29udGV4dC5cbiAqXG4gKiBAcGFyYW0gYnVpbGRDb250ZXh0IC0gVGhlIGJ1aWxkIGNvbnRleHQgZ2VuZXJhdGVkIGJ5IGVzYnVpbGQuXG4gKiBAcGFyYW0gaXNQcm9kdWN0aW9uQnVpbGQgLSBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBidWlsZCBpcyBhIHByb2R1Y3Rpb24gYnVpbGQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGBUYXNrUmVzdWx0YCBpbmRpY2F0aW5nIHRoZSBzdWNjZXNzIG9yIGZhaWx1cmUgb2YgdGhlIGJ1aWxkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW52b2tlRXNidWlsZChidWlsZENvbnRleHQ6IEJ1aWxkQ29udGV4dCwgaXNQcm9kdWN0aW9uQnVpbGQ6IGJvb2xlYW4pOiBQcm9taXNlPENsaVRhc2tSZXN1bHQ+IHtcbiAgaWYgKGlzUHJvZHVjdGlvbkJ1aWxkKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYnVpbGRDb250ZXh0LnJlYnVpbGQoKTtcbiAgICBjb25zdCBpc1N1Y2Nlc3MgPSByZXN1bHQuZXJyb3JzLmxlbmd0aCA9PT0gMCAmJiByZXN1bHQud2FybmluZ3MubGVuZ3RoID09PSAwO1xuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoaXNTdWNjZXNzKTtcbiAgfVxuICBhd2FpdCBidWlsZENvbnRleHQud2F0Y2goKTtcbiAgcmV0dXJuIENsaVRhc2tSZXN1bHQuRG9Ob3RFeGl0KCk7XG59XG4iXSwKICAibWFwcGlu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
146
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2VzYnVpbGQvT2JzaWRpYW5QbHVnaW5CdWlsZGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBPYnNpZGlhblBsdWdpbkJ1aWxkZXJcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGZ1bmN0aW9uYWxpdHkgdG8gYnVpbGQgYW5kIGJ1bmRsZSBhbiBPYnNpZGlhbiBwbHVnaW4gdXNpbmcgZXNidWlsZC5cbiAqIEl0IGluY2x1ZGVzIGZ1bmN0aW9ucyB0byBoYW5kbGUgdGhlIGJ1aWxkIHByb2Nlc3MgYmFzZWQgb24gZGlmZmVyZW50IGJ1aWxkIG1vZGVzIChkZXZlbG9wbWVudCBvciBwcm9kdWN0aW9uKSxcbiAqIGFuZCBpdCBzZXRzIHVwIHZhcmlvdXMgZXNidWlsZCBwbHVnaW5zIHRvIHByZXByb2Nlc3MsIGxpbnQsIGZpeCBzb3VyY2UgbWFwcywgYW5kIGNvcHkgZmlsZXMgdG8gdGhlIE9ic2lkaWFuIHBsdWdpbnMgZm9sZGVyLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgQnVpbGRDb250ZXh0LFxuICBCdWlsZE9wdGlvbnMsXG4gIFBsdWdpblxufSBmcm9tICdlc2J1aWxkJztcblxuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAnZG90ZW52JztcbmltcG9ydCB7IGNvbnRleHQgfSBmcm9tICdlc2J1aWxkJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQteC9uby1yZW5hbWUtZGVmYXVsdFxuaW1wb3J0IHNhc3NQbHVnaW5fIGZyb20gJ2VzYnVpbGQtc2Fzcy1wbHVnaW4nO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi8uLi9FcnJvci50cyc7XG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uLy4uL29ic2lkaWFuL1BsdWdpbi9PYnNpZGlhblBsdWdpblJlcG9QYXRocy50cyc7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnLi4vLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBidWlsZENvbXBpbGUgfSBmcm9tICcuLi9idWlsZC50cyc7XG5pbXBvcnQgeyBDbGlUYXNrUmVzdWx0IH0gZnJvbSAnLi4vQ2xpVXRpbHMudHMnO1xuaW1wb3J0IHtcbiAgYnVpbHRpbk1vZHVsZXMsXG4gIGNwLFxuICBleGlzdHNTeW5jLFxuICBta2RpcixcbiAgcHJvY2VzcyxcbiAgcm0sXG4gIHdyaXRlRmlsZVxufSBmcm9tICcuLi9Ob2RlTW9kdWxlcy50cyc7XG5pbXBvcnQgeyByZWFkUGFja2FnZUpzb24gfSBmcm9tICcuLi9OcG0udHMnO1xuaW1wb3J0IHsgcmVzb2x2ZVBhdGhGcm9tUm9vdCB9IGZyb20gJy4uL1Jvb3QudHMnO1xuaW1wb3J0IHsgY29weVRvT2JzaWRpYW5QbHVnaW5zRm9sZGVyUGx1Z2luIH0gZnJvbSAnLi9jb3B5VG9PYnNpZGlhblBsdWdpbnNGb2xkZXJQbHVnaW4udHMnO1xuaW1wb3J0IHsgY3VzdG9tRXNidWlsZE9wdGlvbnNQbHVnaW4gfSBmcm9tICcuL2N1c3RvbUVzYnVpbGRPcHRpb25zUGx1Z2luLnRzJztcbmltcG9ydCB7IGZpeEVzbVBsdWdpbiB9IGZyb20gJy4vZml4RXNtUGx1Z2luLnRzJztcbmltcG9ydCB7IGZpeFNvdXJjZU1hcHNQbHVnaW4gfSBmcm9tICcuL2ZpeFNvdXJjZU1hcHNQbHVnaW4udHMnO1xuaW1wb3J0IHsgcHJlcHJvY2Vzc1BsdWdpbiB9IGZyb20gJy4vcHJlcHJvY2Vzc1BsdWdpbi50cyc7XG5pbXBvcnQgeyByZW5hbWVDc3NQbHVnaW4gfSBmcm9tICcuL3JlbmFtZUNzc1BsdWdpbi50cyc7XG5pbXBvcnQgeyBzdmVsdGVXcmFwcGVyUGx1Z2luIH0gZnJvbSAnLi9zdmVsdGVXcmFwcGVyUGx1Z2luLnRzJztcblxuY29uc3Qgc2Fzc1BsdWdpbiA9ICgnZGVmYXVsdCcgaW4gc2Fzc1BsdWdpbl8gPyBzYXNzUGx1Z2luXy5kZWZhdWx0IDogc2Fzc1BsdWdpbl8pIGFzIHVua25vd24gYXMgdHlwZW9mIHNhc3NQbHVnaW5fLmRlZmF1bHQ7XG5cbi8qKlxuICogRW51bWVyYXRpb24gcmVwcmVzZW50aW5nIHRoZSBidWlsZCBtb2Rlcy5cbiAqL1xuZXhwb3J0IGVudW0gQnVpbGRNb2RlIHtcbiAgLyoqIERldmVsb3BtZW50IG1vZGUgZm9yIGJ1aWxkaW5nIHRoZSBwbHVnaW4gKi9cbiAgRGV2ZWxvcG1lbnQsXG4gIC8qKiBQcm9kdWN0aW9uIG1vZGUgZm9yIGJ1aWxkaW5nIHRoZSBwbHVnaW4gKi9cbiAgUHJvZHVjdGlvblxufVxuXG4vKipcbiAqIEJhbm5lciB0ZXh0IHRvIGJlIGluY2x1ZGVkIGF0IHRoZSB0b3Agb2YgdGhlIGdlbmVyYXRlZCBmaWxlcy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhbm5lciA9IGAvKlxuVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgRVNCVUlMRFxuaWYgeW91IHdhbnQgdG8gdmlldyB0aGUgc291cmNlLCBwbGVhc2UgdmlzaXQgdGhlIGdpdGh1YiByZXBvc2l0b3J5IG9mIHRoaXMgcGx1Z2luXG4qL1xuYDtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBidWlsZGluZyBhbiBPYnNpZGlhbiBwbHVnaW4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRPYnNpZGlhblBsdWdpbk9wdGlvbnMge1xuICAvKipcbiAgICogQ3VzdG9tIGVzYnVpbGQgcGx1Z2lucyB0byBiZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgcHJvY2Vzcy5cbiAgICovXG4gIGN1c3RvbUVzYnVpbGRQbHVnaW5zPzogUGx1Z2luW107XG5cbiAgLyoqXG4gICAqIEN1c3RvbWl6ZXMgdGhlIGVzYnVpbGQgb3B0aW9ucy5cbiAgICovXG4gIGN1c3RvbWl6ZUVzYnVpbGRPcHRpb25zPyhvcHRpb25zOiBCdWlsZE9wdGlvbnMpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVpbGQgbW9kZSwgZWl0aGVyIERldmVsb3BtZW50IG9yIFByb2R1Y3Rpb25cbiAgICovXG4gIG1vZGU6IEJ1aWxkTW9kZTtcblxuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSBmb3IgT2JzaWRpYW4gY29uZmlndXJhdGlvbi4gRGVmYXVsdHMgdG8gdGhlIGBPQlNJRElBTl9DT05GSUdfRElSYCBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICovXG4gIG9ic2lkaWFuQ29uZmlnRGlyPzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgT2JzaWRpYW5QbHVnaW5CdWlsZGVyRW52IHtcbiAgT0JTSURJQU5fQ09ORklHX0RJUjogc3RyaW5nO1xufVxuXG4vKipcbiAqIEJ1aWxkcyB0aGUgT2JzaWRpYW4gcGx1Z2luIGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgbW9kZSBhbmQgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgcGFyYW1ldGVycyBmb3IgYnVpbGRpbmcgdGhlIHBsdWdpbi5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IGluZGljYXRpbmcgdGhlIHN1Y2Nlc3Mgb3IgZmFpbHVyZSBvZiB0aGUgYnVpbGQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBidWlsZE9ic2lkaWFuUGx1Z2luKG9wdGlvbnM6IEJ1aWxkT2JzaWRpYW5QbHVnaW5PcHRpb25zKTogUHJvbWlzZTxDbGlUYXNrUmVzdWx0PiB7XG4gIGF3YWl0IGJ1aWxkQ29tcGlsZSgpO1xuICBjb25maWcoKTtcbiAgY29uc3Qgb2JzaWRpYW5QbHVnaW5CdWlsZGVyRW52ID0gcHJvY2Vzcy5lbnYgYXMgUGFydGlhbDxPYnNpZGlhblBsdWdpbkJ1aWxkZXJFbnY+O1xuXG4gIGNvbnN0IG9ic2lkaWFuQ29uZmlnRGlyID0gb3B0aW9ucy5vYnNpZGlhbkNvbmZpZ0RpciA/PyBvYnNpZGlhblBsdWdpbkJ1aWxkZXJFbnYuT0JTSURJQU5fQ09ORklHX0RJUiA/PyAnJztcbiAgY29uc3QgaXNQcm9kdWN0aW9uQnVpbGQgPSBvcHRpb25zLm1vZGUgPT09IEJ1aWxkTW9kZS5Qcm9kdWN0aW9uO1xuXG4gIGNvbnN0IGRpc3REaXIgPSByZXNvbHZlUGF0aEZyb21Sb290KGlzUHJvZHVjdGlvbkJ1aWxkID8gT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdEJ1aWxkIDogT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdERldik7XG4gIGlmICghZGlzdERpcikge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGRldGVybWluZSB0aGUgZGlzdCBkaXJlY3RvcnknKTtcbiAgfVxuXG4gIGlmIChleGlzdHNTeW5jKGRpc3REaXIpKSB7XG4gICAgYXdhaXQgcm0oZGlzdERpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gIH1cbiAgYXdhaXQgbWtkaXIoZGlzdERpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG5cbiAgY29uc3QgZGlzdEZpbGVOYW1lcyA9IFtcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5NYW5pZmVzdEpzb25cbiAgXTtcbiAgaWYgKCFpc1Byb2R1Y3Rpb25CdWlsZCkge1xuICAgIGF3YWl0IHdyaXRlRmlsZShqb2luKGRpc3REaXIsIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkhvdFJlbG9hZCksICcnLCAndXRmLTgnKTtcbiAgfVxuXG4gIGZvciAoY29uc3QgZmlsZU5hbWUgb2YgZGlzdEZpbGVOYW1lcykge1xuICAgIGNvbnN0IGxvY2FsRmlsZSA9IHJlc29sdmVQYXRoRnJvbVJvb3QoZmlsZU5hbWUpO1xuICAgIGlmICghbG9jYWxGaWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvdWxkIG5vdCBkZXRlcm1pbmUgdGhlIGxvY2FsIGZpbGUgZm9yICR7ZmlsZU5hbWV9YCk7XG4gICAgfVxuICAgIGNvbnN0IGRpc3RGaWxlID0gam9pbihkaXN0RGlyLCBmaWxlTmFtZSk7XG5cbiAgICBpZiAoZXhpc3RzU3luYyhsb2NhbEZpbGUpKSB7XG4gICAgICBhd2FpdCBjcChsb2NhbEZpbGUsIGRpc3RGaWxlKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkaXN0UGF0aCA9IGpvaW4oZGlzdERpciwgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFpbkpzKTtcbiAgY29uc3QgY3NzUGF0aCA9IGpvaW4oZGlzdERpciwgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuU3R5bGVzQ3NzKTtcblxuICBjb25zdCBwYWNrYWdlSnNvbiA9IGF3YWl0IHJlYWRQYWNrYWdlSnNvbigpO1xuICBjb25zdCBwbHVnaW5OYW1lID0gcGFja2FnZUpzb24ubmFtZSA/PyAnKHVua25vd24pJztcblxuICBjb25zdCBidWlsZE9wdGlvbnM6IEJ1aWxkT3B0aW9ucyA9IHtcbiAgICBiYW5uZXI6IHtcbiAgICAgIGpzOiBiYW5uZXJcbiAgICB9LFxuICAgIGJ1bmRsZTogdHJ1ZSxcbiAgICBjb25kaXRpb25zOiBbJ2Jyb3dzZXInXSxcbiAgICBlbnRyeVBvaW50czogW1xuICAgICAgcmVzb2x2ZVBhdGhGcm9tUm9vdChqb2luKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLlNyYywgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFpblRzKSlcbiAgICAgICAgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ291bGQgbm90IGRldGVybWluZSB0aGUgZW50cnkgcG9pbnQgZm9yIHRoZSBwbHVnaW4nKSlcbiAgICBdLFxuICAgIGV4dGVybmFsOiBbXG4gICAgICAnb2JzaWRpYW4nLFxuICAgICAgJ2VsZWN0cm9uJyxcbiAgICAgICdAY29kZW1pcnJvci9hdXRvY29tcGxldGUnLFxuICAgICAgJ0Bjb2RlbWlycm9yL2NvbGxhYicsXG4gICAgICAnQGNvZGVtaXJyb3IvY29tbWFuZHMnLFxuICAgICAgJ0Bjb2RlbWlycm9yL2xhbmd1YWdlJyxcbiAgICAgICdAY29kZW1pcnJvci9saW50JyxcbiAgICAgICdAY29kZW1pcnJvci9zZWFyY2gnLFxuICAgICAgJ0Bjb2RlbWlycm9yL3N0YXRlJyxcbiAgICAgICdAY29kZW1pcnJvci92aWV3JyxcbiAgICAgICdAbGV6ZXIvY29tbW9uJyxcbiAgICAgICdAbGV6ZXIvaGlnaGxpZ2h0JyxcbiAgICAgICdAbGV6ZXIvbHInLFxuICAgICAgJ2VzYnVpbGQnLFxuICAgICAgJ2VzbGludCcsXG4gICAgICAuLi5idWlsdGluTW9kdWxlc1xuICAgIF0sXG4gICAgZm9ybWF0OiAnY2pzJyxcbiAgICBsb2dMZXZlbDogJ2luZm8nLFxuICAgIG1pbmlmeTogaXNQcm9kdWN0aW9uQnVpbGQsXG4gICAgb3V0ZmlsZTogZGlzdFBhdGgsXG4gICAgcGxhdGZvcm06ICdub2RlJyxcbiAgICBwbHVnaW5zOiBbXG4gICAgICBjdXN0b21Fc2J1aWxkT3B0aW9uc1BsdWdpbihvcHRpb25zLmN1c3RvbWl6ZUVzYnVpbGRPcHRpb25zPy5iaW5kKG9wdGlvbnMpKSxcbiAgICAgIHN2ZWx0ZVdyYXBwZXJQbHVnaW4oaXNQcm9kdWN0aW9uQnVpbGQpLFxuICAgICAgc2Fzc1BsdWdpbih7XG4gICAgICAgIHNvdXJjZU1hcDogIWlzUHJvZHVjdGlvbkJ1aWxkXG4gICAgICB9KSxcbiAgICAgIHJlbmFtZUNzc1BsdWdpbihkaXN0RGlyKSxcbiAgICAgIHByZXByb2Nlc3NQbHVnaW4oKSxcbiAgICAgIGZpeEVzbVBsdWdpbigpLFxuICAgICAgZml4U291cmNlTWFwc1BsdWdpbihpc1Byb2R1Y3Rpb25CdWlsZCwgW2Rpc3RQYXRoLCBjc3NQYXRoXSwgcGx1Z2luTmFtZSksXG4gICAgICAuLi5vcHRpb25zLmN1c3RvbUVzYnVpbGRQbHVnaW5zID8/IFtdLFxuICAgICAgY29weVRvT2JzaWRpYW5QbHVnaW5zRm9sZGVyUGx1Z2luKGlzUHJvZHVjdGlvbkJ1aWxkLCBkaXN0RGlyLCBvYnNpZGlhbkNvbmZpZ0RpciwgcGx1Z2luTmFtZSlcbiAgICBdLFxuICAgIHNvdXJjZW1hcDogaXNQcm9kdWN0aW9uQnVpbGQgPyBmYWxzZSA6ICdpbmxpbmUnLFxuICAgIHRhcmdldDogJ2VzbmV4dCcsXG4gICAgdHJlZVNoYWtpbmc6IHRydWVcbiAgfTtcblxuICBjb25zdCBidWlsZENvbnRleHQgPSBhd2FpdCBjb250ZXh0KGJ1aWxkT3B0aW9ucyk7XG4gIHJldHVybiBhd2FpdCBpbnZva2VFc2J1aWxkKGJ1aWxkQ29udGV4dCwgaXNQcm9kdWN0aW9uQnVpbGQpO1xufVxuXG4vKipcbiAqIEludm9rZXMgdGhlIGJ1aWxkIHByb2Nlc3Mgd2l0aCB0aGUgcHJvdmlkZWQgYnVpbGQgY29udGV4dC5cbiAqXG4gKiBAcGFyYW0gYnVpbGRDb250ZXh0IC0gVGhlIGJ1aWxkIGNvbnRleHQgZ2VuZXJhdGVkIGJ5IGVzYnVpbGQuXG4gKiBAcGFyYW0gaXNQcm9kdWN0aW9uQnVpbGQgLSBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBidWlsZCBpcyBhIHByb2R1Y3Rpb24gYnVpbGQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIHtAbGluayBDbGlUYXNrUmVzdWx0fSBpbmRpY2F0aW5nIHRoZSBzdWNjZXNzIG9yIGZhaWx1cmUgb2YgdGhlIGJ1aWxkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW52b2tlRXNidWlsZChidWlsZENvbnRleHQ6IEJ1aWxkQ29udGV4dCwgaXNQcm9kdWN0aW9uQnVpbGQ6IGJvb2xlYW4pOiBQcm9taXNlPENsaVRhc2tSZXN1bHQ+IHtcbiAgaWYgKGlzUHJvZHVjdGlvbkJ1aWxkKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYnVpbGRDb250ZXh0LnJlYnVpbGQoKTtcbiAgICBjb25zdCBpc1N1Y2Nlc3MgPSByZXN1bHQuZXJyb3JzLmxlbmd0aCA9PT0gMCAmJiByZXN1bHQud2FybmluZ3MubGVuZ3RoID09PSAwO1xuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoaXNTdWNjZXNzKTtcbiAgfVxuICBhd2FpdCBidWlsZENvbnRleHQud2F0Y2goKTtcbiAgcmV0dXJuIENsaVRhc2tSZXN1bHQuRG9Ob3RFeGl0KCk7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
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @packageDocumentation spellcheck
3
3
  * This module provides a function for running a spellcheck on the codebase using the `cspell` library.
4
- * It reports any spelling issues found in the code and returns a `TaskResult` indicating whether the spellcheck was successful.
4
+ * It reports any spelling issues found in the code and returns a {@link CliTaskResult} indicating whether the spellcheck was successful.
5
5
  */
6
6
  /**
7
7
  * Runs a spellcheck on the entire codebase using `cspell`.
@@ -9,6 +9,6 @@
9
9
  * The function checks all files in the current directory and its subdirectories for spelling issues.
10
10
  * If issues are found, they are logged to the console with their file path, line, and column number.
11
11
  *
12
- * @returns A `Promise` that resolves to a `TaskResult`, indicating the success or failure of the spellcheck.
12
+ * @returns A {@link Promise} that resolves to a {@link CliTaskResult}, indicating the success or failure of the spellcheck.
13
13
  */
14
14
  export declare function spellcheck(): Promise<void>;
@@ -12,4 +12,4 @@ async function spellcheck() {
12
12
  export {
13
13
  spellcheck
14
14
  };
15
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL3NwZWxsY2hlY2sudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIHNwZWxsY2hlY2tcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgZnVuY3Rpb24gZm9yIHJ1bm5pbmcgYSBzcGVsbGNoZWNrIG9uIHRoZSBjb2RlYmFzZSB1c2luZyB0aGUgYGNzcGVsbGAgbGlicmFyeS5cbiAqIEl0IHJlcG9ydHMgYW55IHNwZWxsaW5nIGlzc3VlcyBmb3VuZCBpbiB0aGUgY29kZSBhbmQgcmV0dXJucyBhIGBUYXNrUmVzdWx0YCBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHNwZWxsY2hlY2sgd2FzIHN1Y2Nlc3NmdWwuXG4gKi9cblxuaW1wb3J0IHsgZXhlY0Zyb21Sb290IH0gZnJvbSAnLi9Sb290LnRzJztcblxuLyoqXG4gKiBSdW5zIGEgc3BlbGxjaGVjayBvbiB0aGUgZW50aXJlIGNvZGViYXNlIHVzaW5nIGBjc3BlbGxgLlxuICpcbiAqIFRoZSBmdW5jdGlvbiBjaGVja3MgYWxsIGZpbGVzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhbmQgaXRzIHN1YmRpcmVjdG9yaWVzIGZvciBzcGVsbGluZyBpc3N1ZXMuXG4gKiBJZiBpc3N1ZXMgYXJlIGZvdW5kLCB0aGV5IGFyZSBsb2dnZWQgdG8gdGhlIGNvbnNvbGUgd2l0aCB0aGVpciBmaWxlIHBhdGgsIGxpbmUsIGFuZCBjb2x1bW4gbnVtYmVyLlxuICpcbiAqIEByZXR1cm5zIEEgYFByb21pc2VgIHRoYXQgcmVzb2x2ZXMgdG8gYSBgVGFza1Jlc3VsdGAsIGluZGljYXRpbmcgdGhlIHN1Y2Nlc3Mgb3IgZmFpbHVyZSBvZiB0aGUgc3BlbGxjaGVjay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNwZWxsY2hlY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdCgnbnB4IGNzcGVsbCAuIC0tbm8tcHJvZ3Jlc3MnKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFNQSxTQUFTLG9CQUFvQjtBQVU3QixlQUFzQixhQUE0QjtBQUNoRCxRQUFNLGFBQWEsNEJBQTRCO0FBQ2pEOyIsCiAgIm5hbWVzIjogW10KfQo=
15
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL3NwZWxsY2hlY2sudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIHNwZWxsY2hlY2tcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgZnVuY3Rpb24gZm9yIHJ1bm5pbmcgYSBzcGVsbGNoZWNrIG9uIHRoZSBjb2RlYmFzZSB1c2luZyB0aGUgYGNzcGVsbGAgbGlicmFyeS5cbiAqIEl0IHJlcG9ydHMgYW55IHNwZWxsaW5nIGlzc3VlcyBmb3VuZCBpbiB0aGUgY29kZSBhbmQgcmV0dXJucyBhIHtAbGluayBDbGlUYXNrUmVzdWx0fSBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHNwZWxsY2hlY2sgd2FzIHN1Y2Nlc3NmdWwuXG4gKi9cblxuaW1wb3J0IHsgZXhlY0Zyb21Sb290IH0gZnJvbSAnLi9Sb290LnRzJztcblxuLyoqXG4gKiBSdW5zIGEgc3BlbGxjaGVjayBvbiB0aGUgZW50aXJlIGNvZGViYXNlIHVzaW5nIGBjc3BlbGxgLlxuICpcbiAqIFRoZSBmdW5jdGlvbiBjaGVja3MgYWxsIGZpbGVzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhbmQgaXRzIHN1YmRpcmVjdG9yaWVzIGZvciBzcGVsbGluZyBpc3N1ZXMuXG4gKiBJZiBpc3N1ZXMgYXJlIGZvdW5kLCB0aGV5IGFyZSBsb2dnZWQgdG8gdGhlIGNvbnNvbGUgd2l0aCB0aGVpciBmaWxlIHBhdGgsIGxpbmUsIGFuZCBjb2x1bW4gbnVtYmVyLlxuICpcbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gYSB7QGxpbmsgQ2xpVGFza1Jlc3VsdH0sIGluZGljYXRpbmcgdGhlIHN1Y2Nlc3Mgb3IgZmFpbHVyZSBvZiB0aGUgc3BlbGxjaGVjay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNwZWxsY2hlY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdCgnbnB4IGNzcGVsbCAuIC0tbm8tcHJvZ3Jlc3MnKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFNQSxTQUFTLG9CQUFvQjtBQVU3QixlQUFzQixhQUE0QjtBQUNoRCxRQUFNLGFBQWEsNEJBQTRCO0FBQ2pEOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -91,7 +91,7 @@ export declare function copyUpdatedManifest(): Promise<void>;
91
91
  * Generates a new version string based on the current version and the specified update type.
92
92
  *
93
93
  * @param versionUpdateType - The type of version update (major, minor, patch, beta, or manual).
94
- * @returns A `Promise` that resolves to the new version string.
94
+ * @returns A {@link Promise} that resolves to the new version string.
95
95
  * @throws Error if the current version format is invalid.
96
96
  */
97
97
  export declare function getNewVersion(versionUpdateType: string): Promise<string>;
@@ -158,7 +158,7 @@ export declare function updateVersion(versionUpdateType?: string, prepareGitHubR
158
158
  * and Obsidian plugin manifests if applicable.
159
159
  *
160
160
  * @param newVersion - The new version string to update in the files.
161
- * @returns A `Promise` that resolves when the update is complete.
161
+ * @returns A {@link Promise} that resolves when the update is complete.
162
162
  */
163
163
  export declare function updateVersionInFiles(newVersion: string): Promise<void>;
164
164
  /**
@@ -358,4 +358,4 @@ export {
358
358
  updateVersionInFiles,
359
359
  validate
360
360
  };
361
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL3ZlcnNpb24udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIHZlcnNpb25cbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGZ1bmN0aW9ucyBmb3IgbWFuYWdpbmcgdmVyc2lvbiB1cGRhdGVzIGluIGEgcHJvamVjdC5cbiAqIEl0IGluY2x1ZGVzIHRhc2tzIHN1Y2ggYXMgdmFsaWRhdGluZyB2ZXJzaW9uIHVwZGF0ZSB0eXBlcywgY2hlY2tpbmcgdGhlIHN0YXRlXG4gKiBvZiBHaXQgYW5kIEdpdEh1YiBDTEksIHVwZGF0aW5nIHZlcnNpb24gbnVtYmVycyBpbiBmaWxlcywgYW5kIHBlcmZvcm1pbmdcbiAqIEdpdCBvcGVyYXRpb25zIHN1Y2ggYXMgdGFnZ2luZyBhbmQgcHVzaGluZy5cbiAqXG4gKiBUaGUgbWFpbiBmdW5jdGlvbiwgYHVwZGF0ZVZlcnNpb25gLCBjb29yZGluYXRlcyB0aGVzZSB0YXNrcyB0byBlbnN1cmUgdGhhdFxuICogdmVyc2lvbiB1cGRhdGVzIGFyZSBoYW5kbGVkIGNvbnNpc3RlbnRseSBhbmQgY29ycmVjdGx5LiBJdCBhbHNvIGludGVncmF0ZXNcbiAqIHdpdGggT2JzaWRpYW4gcGx1Z2lucywgaWYgYXBwbGljYWJsZSwgYnkgdXBkYXRpbmcgcmVsZXZhbnQgZmlsZXMgYW5kIHJlbGVhc2luZ1xuICogbmV3IHZlcnNpb25zIG9uIEdpdEh1Yi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBhY2thZ2VMb2NrSnNvbiB9IGZyb20gJy4vTnBtLnRzJztcblxuaW1wb3J0IHsgZ2V0TGliRGVidWdnZXIgfSBmcm9tICcuLi9EZWJ1Zy50cyc7XG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uL29ic2lkaWFuL1BsdWdpbi9PYnNpZGlhblBsdWdpblJlcG9QYXRocy50cyc7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyByZXBsYWNlQWxsIH0gZnJvbSAnLi4vU3RyaW5nLnRzJztcbmltcG9ydCB7IHJlYWRkaXJQb3NpeCB9IGZyb20gJy4vRnMudHMnO1xuaW1wb3J0IHsgZWRpdEpzb24gfSBmcm9tICcuL0pTT04udHMnO1xuaW1wb3J0IHtcbiAgY3AsXG4gIGNyZWF0ZUludGVyZmFjZSxcbiAgZXhpc3RzU3luYyxcbiAgcmVhZEZpbGUsXG4gIHJtLFxuICB3cml0ZUZpbGVcbn0gZnJvbSAnLi9Ob2RlTW9kdWxlcy50cyc7XG5pbXBvcnQge1xuICBlZGl0TnBtU2hyaW5rV3JhcEpzb24sXG4gIGVkaXRQYWNrYWdlSnNvbixcbiAgZWRpdFBhY2thZ2VMb2NrSnNvbixcbiAgcmVhZFBhY2thZ2VKc29uXG59IGZyb20gJy4vTnBtLnRzJztcbmltcG9ydCB7IG5wbVJ1biB9IGZyb20gJy4vTnBtUnVuLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMgfSBmcm9tICcuL09ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMudHMnO1xuaW1wb3J0IHtcbiAgZXhlY0Zyb21Sb290LFxuICByZXNvbHZlUGF0aEZyb21Sb290U2FmZVxufSBmcm9tICcuL1Jvb3QudHMnO1xuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIGRpZmZlcmVudCB0eXBlcyBvZiB2ZXJzaW9uIHVwZGF0ZXMuXG4gKi9cbmV4cG9ydCBlbnVtIFZlcnNpb25VcGRhdGVUeXBlIHtcbiAgQmV0YSA9ICdiZXRhJyxcbiAgSW52YWxpZCA9ICdpbnZhbGlkJyxcbiAgTWFqb3IgPSAnbWFqb3InLFxuICBNYW51YWwgPSAnbWFudWFsJyxcbiAgTWlub3IgPSAnbWlub3InLFxuICBQYXRjaCA9ICdwYXRjaCdcbn1cblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyB0aGUgbWFuaWZlc3QgZmlsZSBmb3JtYXQgZm9yIE9ic2lkaWFuIHBsdWdpbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFuaWZlc3Qge1xuICAvKipcbiAgICogVGhlIG1pbmltdW0gT2JzaWRpYW4gdmVyc2lvbiByZXF1aXJlZCBmb3IgdGhlIHBsdWdpbi5cbiAgICovXG4gIG1pbkFwcFZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgdGhlIHBsdWdpbi5cbiAgICovXG4gIHZlcnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyB0aGUgc3RydWN0dXJlIG9mIE9ic2lkaWFuIHJlbGVhc2VzIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JzaWRpYW5SZWxlYXNlc0pzb24ge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIE9ic2lkaWFuIHJlbGVhc2UuXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIEdpdCB0YWcgZm9yIHRoZSBuZXcgdmVyc2lvbi5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgdG8gdXNlIGZvciB0aGUgdGFnLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdGFnIGhhcyBiZWVuIGNyZWF0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRHaXRUYWcobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChgZ2l0IHRhZyAtYSAke25ld1ZlcnNpb259IC1tICR7bmV3VmVyc2lvbn0gLS1mb3JjZWAsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbn1cblxuLyoqXG4gKiBBZGRzIHVwZGF0ZWQgZmlsZXMgdG8gdGhlIEdpdCBzdGFnaW5nIGFyZWEgYW5kIGNvbW1pdHMgdGhlbSB3aXRoIHRoZSBuZXcgdmVyc2lvbiBtZXNzYWdlLlxuICpcbiAqIEBwYXJhbSBuZXdWZXJzaW9uIC0gVGhlIG5ldyB2ZXJzaW9uIG51bWJlciB1c2VkIGFzIHRoZSBjb21taXQgbWVzc2FnZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGZpbGVzIGhhdmUgYmVlbiBhZGRlZCBhbmQgY29tbWl0dGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYWRkVXBkYXRlZEZpbGVzVG9HaXQobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChbJ2dpdCcsICdhZGQnLCAnLS1hbGwnXSwgeyBpc1F1aWV0OiB0cnVlIH0pO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoYGdpdCBjb21taXQgLW0gJHtuZXdWZXJzaW9ufSAtLWFsbG93LWVtcHR5YCwgeyBpc1F1aWV0OiB0cnVlIH0pO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgR2l0SHViIENMSSBpcyBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbS5cbiAqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIEdpdEh1YiBDTEkgaXMgbm90IGluc3RhbGxlZC5cbiAqXG4gKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBHaXRIdWIgQ0xJIGlzIG5vdCBpbnN0YWxsZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0dpdEh1YkNsaUluc3RhbGxlZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoJ2doIC0tdmVyc2lvbicsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHaXRIdWIgQ0xJIGlzIG5vdCBpbnN0YWxsZWQuIFBsZWFzZSBpbnN0YWxsIGl0IGZyb20gaHR0cHM6Ly9jbGkuZ2l0aHViLmNvbS8nKTtcbiAgfVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiBHaXQgaXMgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0uXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIEdpdCBpcyBub3QgaW5zdGFsbGVkLlxuICpcbiAqIEB0aHJvd3MgRXJyb3IgaWYgR2l0IGlzIG5vdCBpbnN0YWxsZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0dpdEluc3RhbGxlZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoJ2dpdCAtLXZlcnNpb24nLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBFcnJvcignR2l0IGlzIG5vdCBpbnN0YWxsZWQuIFBsZWFzZSBpbnN0YWxsIGl0IGZyb20gaHR0cHM6Ly9naXQtc2NtLmNvbS8nKTtcbiAgfVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgR2l0IHJlcG9zaXRvcnkgaXMgY2xlYW4sIG1lYW5pbmcgdGhlcmUgYXJlIG5vIHVuY29tbWl0dGVkIGNoYW5nZXMuXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBHaXQgcmVwb3NpdG9yeSBpcyBub3QgY2xlYW4uXG4gKlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgR2l0IHJlcG9zaXRvcnkgaXMgbm90IGNsZWFuLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2hlY2tHaXRSZXBvQ2xlYW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3Rkb3V0ID0gYXdhaXQgZXhlY0Zyb21Sb290KCdnaXQgc3RhdHVzIC0tcG9yY2VsYWluIC0tdW50cmFja2VkLWZpbGVzPWFsbCcsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgICBpZiAoc3Rkb3V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoKTtcbiAgICB9XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBFcnJvcignR2l0IHJlcG9zaXRvcnkgaXMgbm90IGNsZWFuLiBQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHlvdXIgY2hhbmdlcyBiZWZvcmUgcmVsZWFzaW5nIGEgbmV3IHZlcnNpb24uJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDb3BpZXMgdGhlIHVwZGF0ZWQgbWFuaWZlc3QgZmlsZSB0byB0aGUgZGlzdHJpYnV0aW9uIGJ1aWxkIGRpcmVjdG9yeS5cbiAqXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjb3B5IG9wZXJhdGlvbiBpcyBjb21wbGV0ZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNvcHlVcGRhdGVkTWFuaWZlc3QoKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGNwKFxuICAgIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiksXG4gICAgcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoam9pbihPYnNpZGlhblBsdWdpblJlcG9QYXRocy5EaXN0QnVpbGQsIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbikpLFxuICAgIHsgZm9yY2U6IHRydWUgfVxuICApO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlcyBhIG5ldyB2ZXJzaW9uIHN0cmluZyBiYXNlZCBvbiB0aGUgY3VycmVudCB2ZXJzaW9uIGFuZCB0aGUgc3BlY2lmaWVkIHVwZGF0ZSB0eXBlLlxuICpcbiAqIEBwYXJhbSB2ZXJzaW9uVXBkYXRlVHlwZSAtIFRoZSB0eXBlIG9mIHZlcnNpb24gdXBkYXRlIChtYWpvciwgbWlub3IsIHBhdGNoLCBiZXRhLCBvciBtYW51YWwpLlxuICogQHJldHVybnMgQSBgUHJvbWlzZWAgdGhhdCByZXNvbHZlcyB0byB0aGUgbmV3IHZlcnNpb24gc3RyaW5nLlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgY3VycmVudCB2ZXJzaW9uIGZvcm1hdCBpcyBpbnZhbGlkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TmV3VmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgdmVyc2lvblR5cGUgPSBnZXRWZXJzaW9uVXBkYXRlVHlwZSh2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGlmICh2ZXJzaW9uVHlwZSA9PT0gVmVyc2lvblVwZGF0ZVR5cGUuTWFudWFsKSB7XG4gICAgcmV0dXJuIHZlcnNpb25VcGRhdGVUeXBlO1xuICB9XG5cbiAgY29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCByZWFkUGFja2FnZUpzb24oKTtcbiAgY29uc3QgY3VycmVudFZlcnNpb24gPSBwYWNrYWdlSnNvbi52ZXJzaW9uID8/ICcnO1xuXG4gIGNvbnN0IG1hdGNoID0gL14oPzxNYWpvcj5cXGQrKVxcLig/PE1pbm9yPlxcZCspXFwuKD88UGF0Y2g+XFxkKykoPzotYmV0YVxcLig/PEJldGE+XFxkKykpPyQvLmV4ZWMoY3VycmVudFZlcnNpb24pO1xuICBpZiAoIW1hdGNoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGN1cnJlbnQgdmVyc2lvbiBmb3JtYXQ6ICR7Y3VycmVudFZlcnNpb259YCk7XG4gIH1cblxuICBsZXQgbWFqb3IgPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ01ham9yJ10gPz8gJycpO1xuICBsZXQgbWlub3IgPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ01pbm9yJ10gPz8gJycpO1xuICBsZXQgcGF0Y2ggPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ1BhdGNoJ10gPz8gJycpO1xuICBsZXQgYmV0YSA9IE51bWJlcihtYXRjaC5ncm91cHM/LlsnQmV0YSddID8/ICcnKTtcblxuICBzd2l0Y2ggKHZlcnNpb25UeXBlKSB7XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5CZXRhOlxuICAgICAgaWYgKGJldGEgPT09IDApIHtcbiAgICAgICAgcGF0Y2grKztcbiAgICAgIH1cbiAgICAgIGJldGErKztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuTWFqb3I6XG4gICAgICBtYWpvcisrO1xuICAgICAgbWlub3IgPSAwO1xuICAgICAgcGF0Y2ggPSAwO1xuICAgICAgYmV0YSA9IDA7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLk1pbm9yOlxuICAgICAgbWlub3IrKztcbiAgICAgIHBhdGNoID0gMDtcbiAgICAgIGJldGEgPSAwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5QYXRjaDpcbiAgICAgIGlmIChiZXRhID09PSAwKSB7XG4gICAgICAgIHBhdGNoKys7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBiZXRhID0gMDtcbiAgICAgIH1cbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdmVyc2lvbiB1cGRhdGUgdHlwZTogJHt2ZXJzaW9uVHlwZX1gKTtcbiAgfVxuXG4gIHJldHVybiBgJHttYWpvci50b1N0cmluZygpfS4ke21pbm9yLnRvU3RyaW5nKCl9LiR7cGF0Y2gudG9TdHJpbmcoKX0ke2JldGEgPiAwID8gYC1iZXRhLiR7YmV0YS50b1N0cmluZygpfWAgOiAnJ31gO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgcmVsZWFzZSBub3RlcyBmb3IgYSBzcGVjaWZpYyB2ZXJzaW9uIGZyb20gdGhlIGNoYW5nZWxvZy5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgZm9yIHdoaWNoIHRvIGdldCB0aGUgcmVsZWFzZSBub3Rlcy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSByZWxlYXNlIG5vdGVzIGZvciB0aGUgc3BlY2lmaWVkIHZlcnNpb24uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRSZWxlYXNlTm90ZXMobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgY2hhbmdlbG9nUGF0aCA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kKTtcbiAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGNoYW5nZWxvZ1BhdGgsICd1dGYtOCcpO1xuICBjb25zdCBuZXdWZXJzaW9uRXNjYXBlZCA9IHJlcGxhY2VBbGwobmV3VmVyc2lvbiwgJy4nLCAnXFxcXC4nKTtcbiAgY29uc3QgbWF0Y2ggPSBuZXcgUmVnRXhwKGBcXG4jIyAke25ld1ZlcnNpb25Fc2NhcGVkfVxcblxcbigoLnxcXG4pKz8pXFxuXFxuIyNgKS5leGVjKGNvbnRlbnQpO1xuICBsZXQgcmVsZWFzZU5vdGVzID0gbWF0Y2g/LlsxXSA/IGAke21hdGNoWzFdfVxcblxcbmAgOiAnJztcblxuICBjb25zdCB0YWdzID0gKGF3YWl0IGV4ZWNGcm9tUm9vdCgnZ2l0IHRhZyAtLXNvcnQ9LWNyZWF0b3JkYXRlJywgeyBpc1F1aWV0OiB0cnVlIH0pKS5zcGxpdCgvXFxyP1xcbi8pO1xuICBjb25zdCBwcmV2aW91c1ZlcnNpb24gPSB0YWdzWzFdO1xuICBsZXQgY2hhbmdlc1VybDogc3RyaW5nO1xuXG4gIGNvbnN0IHJlcG9VcmwgPSBhd2FpdCBleGVjRnJvbVJvb3QoJ2doIHJlcG8gdmlldyAtLWpzb24gdXJsIC1xIC51cmwnLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG5cbiAgaWYgKHByZXZpb3VzVmVyc2lvbikge1xuICAgIGNoYW5nZXNVcmwgPSBgJHtyZXBvVXJsfS9jb21wYXJlLyR7cHJldmlvdXNWZXJzaW9ufS4uLiR7bmV3VmVyc2lvbn1gO1xuICB9IGVsc2Uge1xuICAgIGNoYW5nZXNVcmwgPSBgJHtyZXBvVXJsfS9jb21taXRzLyR7bmV3VmVyc2lvbn1gO1xuICB9XG5cbiAgcmVsZWFzZU5vdGVzICs9IGAqKkZ1bGwgQ2hhbmdlbG9nKio6ICR7Y2hhbmdlc1VybH1gO1xuICByZXR1cm4gcmVsZWFzZU5vdGVzO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgdGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgYmFzZWQgb24gdGhlIGlucHV0IHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgaW5wdXQgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZS5cbiAqIEByZXR1cm5zIFRoZSBjb3JyZXNwb25kaW5nIGBWZXJzaW9uVXBkYXRlVHlwZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRWZXJzaW9uVXBkYXRlVHlwZSh2ZXJzaW9uVXBkYXRlVHlwZTogc3RyaW5nKTogVmVyc2lvblVwZGF0ZVR5cGUge1xuICBjb25zdCB2ZXJzaW9uVXBkYXRlVHlwZUVudW0gPSB2ZXJzaW9uVXBkYXRlVHlwZSBhcyBWZXJzaW9uVXBkYXRlVHlwZTtcbiAgc3dpdGNoICh2ZXJzaW9uVXBkYXRlVHlwZUVudW0pIHtcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLkJldGE6XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5NYWpvcjpcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLk1pbm9yOlxuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuUGF0Y2g6XG4gICAgICByZXR1cm4gdmVyc2lvblVwZGF0ZVR5cGVFbnVtO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIGlmICgvXlxcZCtcXC5cXGQrXFwuXFxkKyg/Oi1bXFx3XFxkLi1dKyk/JC8udGVzdCh2ZXJzaW9uVXBkYXRlVHlwZSkpIHtcbiAgICAgICAgcmV0dXJuIFZlcnNpb25VcGRhdGVUeXBlLk1hbnVhbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIFZlcnNpb25VcGRhdGVUeXBlLkludmFsaWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBQdXNoZXMgY29tbWl0cyBhbmQgdGFncyB0byB0aGUgcmVtb3RlIEdpdCByZXBvc2l0b3J5LlxuICpcbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHB1c2ggb3BlcmF0aW9uIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2l0UHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KCdnaXQgcHVzaCAtLWZvbGxvdy10YWdzIC0tZm9yY2UnLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG59XG5cbi8qKlxuICogUHVibGlzaGVzIGEgR2l0SHViIHJlbGVhc2UgZm9yIHRoZSBuZXcgdmVyc2lvbi5cbiAqXG4gKiBIYW5kbGVzIHRoZSBjcmVhdGlvbiBvZiBhIHJlbGVhc2UgYW5kIHVwbG9hZGluZyBmaWxlcyBmb3IgZWl0aGVyIGFuIE9ic2lkaWFuIHBsdWdpbiBvciBhbm90aGVyIHByb2plY3QuXG4gKlxuICogQHBhcmFtIG5ld1ZlcnNpb24gLSBUaGUgbmV3IHZlcnNpb24gbnVtYmVyIGZvciB0aGUgcmVsZWFzZS5cbiAqIEBwYXJhbSBpc09ic2lkaWFuUGx1Z2luIC0gQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHByb2plY3QgaXMgYW4gT2JzaWRpYW4gcGx1Z2luLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgcmVsZWFzZSBoYXMgYmVlbiBwdWJsaXNoZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwdWJsaXNoR2l0SHViUmVsZWFzZShuZXdWZXJzaW9uOiBzdHJpbmcsIGlzT2JzaWRpYW5QbHVnaW46IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgbGV0IGZpbGVQYXRoczogc3RyaW5nW107XG5cbiAgaWYgKGlzT2JzaWRpYW5QbHVnaW4pIHtcbiAgICBjb25zdCBidWlsZERpciA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkRpc3RCdWlsZCk7XG4gICAgY29uc3QgZmlsZU5hbWVzID0gYXdhaXQgcmVhZGRpclBvc2l4KGJ1aWxkRGlyKTtcbiAgICBmaWxlUGF0aHMgPSBmaWxlTmFtZXMubWFwKChmaWxlTmFtZSkgPT4gam9pbihidWlsZERpciwgZmlsZU5hbWUpKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCByZXN1bHRKc29uID0gYXdhaXQgZXhlY0Zyb21Sb290KFsnbnBtJywgJ3BhY2snLCAnLS1wYWNrLWRlc3RpbmF0aW9uJywgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5EaXN0LCAnLS1qc29uJ10sIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgICBjb25zdCByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdEpzb24pIGFzIFt7IGZpbGVuYW1lOiBzdHJpbmcgfV07XG4gICAgZmlsZVBhdGhzID0gW1xuICAgICAgam9pbihPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLkRpc3QsIHJlc3VsdFswXS5maWxlbmFtZSksXG4gICAgICBqb2luKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRGlzdCwgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5TdHlsZXNDc3MpXG4gICAgXTtcbiAgfVxuXG4gIGZpbGVQYXRocyA9IGZpbGVQYXRocy5maWx0ZXIoKGZpbGVQYXRoKSA9PiBleGlzdHNTeW5jKHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKGZpbGVQYXRoKSkpO1xuXG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChbXG4gICAgJ2doJyxcbiAgICAncmVsZWFzZScsXG4gICAgJ2NyZWF0ZScsXG4gICAgbmV3VmVyc2lvbixcbiAgICAuLi5maWxlUGF0aHMsXG4gICAgJy0tdGl0bGUnLFxuICAgIGB2JHtuZXdWZXJzaW9ufWAsXG4gICAgLi4uKGlzQmV0YShuZXdWZXJzaW9uKSA/IFsnLS1wcmVyZWxlYXNlJ10gOiBbXSksXG4gICAgJy0tbm90ZXMtZmlsZScsXG4gICAgJy0nXG4gIF0sIHtcbiAgICBpc1F1aWV0OiB0cnVlLFxuICAgIHN0ZGluOiBhd2FpdCBnZXRSZWxlYXNlTm90ZXMobmV3VmVyc2lvbilcbiAgfSk7XG59XG5cbi8qKlxuICogVXBkYXRlcyB0aGUgY2hhbmdlbG9nIGZpbGUgd2l0aCBuZXcgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgY29tbWl0IG1lc3NhZ2VzLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gcmVhZHMgdGhlIGN1cnJlbnQgY2hhbmdlbG9nLCBhcHBlbmRzIG5ldyBlbnRyaWVzIGZvciB0aGUgbGF0ZXN0IHZlcnNpb24sXG4gKiBhbmQgcHJvbXB0cyB0aGUgdXNlciB0byByZXZpZXcgdGhlIGNoYW5nZXMuXG4gKlxuICogQHBhcmFtIG5ld1ZlcnNpb24gLSBUaGUgbmV3IHZlcnNpb24gbnVtYmVyIHRvIGJlIGFkZGVkIHRvIHRoZSBjaGFuZ2Vsb2cuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjaGFuZ2Vsb2cgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlQ2hhbmdlbG9nKG5ld1ZlcnNpb246IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBIRUFERVJfTElORVNfQ09VTlQgPSAyO1xuICBjb25zdCBjaGFuZ2Vsb2dQYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuQ2hhbmdlbG9nTWQpO1xuICBsZXQgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lczogc3RyaW5nW107XG4gIGlmIChleGlzdHNTeW5jKGNoYW5nZWxvZ1BhdGgpKSB7XG4gICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGNoYW5nZWxvZ1BhdGgsICd1dGYtOCcpO1xuICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMgPSBjb250ZW50LnNwbGl0KCdcXG4nKS5zbGljZShIRUFERVJfTElORVNfQ09VTlQpO1xuICAgIGlmIChwcmV2aW91c0NoYW5nZWxvZ0xpbmVzLmF0KC0xKSA9PT0gJycpIHtcbiAgICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMucG9wKCk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMgPSBbXTtcbiAgfVxuXG4gIGNvbnN0IGxhc3RUYWcgPSByZXBsYWNlQWxsKHByZXZpb3VzQ2hhbmdlbG9nTGluZXNbMF0gPz8gJycsICcjIyAnLCAnJyk7XG4gIGNvbnN0IGNvbW1pdFJhbmdlID0gbGFzdFRhZyA/IGAke2xhc3RUYWd9Li5IRUFEYCA6ICdIRUFEJztcbiAgY29uc3QgY29tbWl0TWVzc2FnZXNTdHIgPSBhd2FpdCBleGVjRnJvbVJvb3QoYGdpdCBsb2cgJHtjb21taXRSYW5nZX0gLS1mb3JtYXQ9JUIgLS1maXJzdC1wYXJlbnQgLXpgLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG4gIGNvbnN0IGNvbW1pdE1lc3NhZ2VzID0gY29tbWl0TWVzc2FnZXNTdHIuc3BsaXQoJ1xcMCcpLmZpbHRlcihCb29sZWFuKS5tYXAodG9TaW5nbGVMaW5lKTtcblxuICBsZXQgbmV3Q2hhbmdlTG9nID0gYCMgQ0hBTkdFTE9HXFxuXFxuIyMgJHtuZXdWZXJzaW9ufVxcblxcbmA7XG5cbiAgZm9yIChjb25zdCBtZXNzYWdlIG9mIGNvbW1pdE1lc3NhZ2VzKSB7XG4gICAgbmV3Q2hhbmdlTG9nICs9IGAtICR7bWVzc2FnZX1cXG5gO1xuICB9XG5cbiAgaWYgKHByZXZpb3VzQ2hhbmdlbG9nTGluZXMubGVuZ3RoID4gMCkge1xuICAgIG5ld0NoYW5nZUxvZyArPSAnXFxuJztcbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lcykge1xuICAgICAgbmV3Q2hhbmdlTG9nICs9IGAke2xpbmV9XFxuYDtcbiAgICB9XG4gIH1cblxuICBhd2FpdCB3cml0ZUZpbGUoY2hhbmdlbG9nUGF0aCwgbmV3Q2hhbmdlTG9nLCAndXRmLTgnKTtcblxuICBjb25zdCBjb2RlVmVyc2lvbiA9IGF3YWl0IGV4ZWNGcm9tUm9vdCgnY29kZSAtLXZlcnNpb24nLCB7XG4gICAgaXNRdWlldDogdHJ1ZSxcbiAgICBzaG91bGRJZ25vcmVFeGl0Q29kZTogdHJ1ZVxuICB9KTtcbiAgY29uc3QgX2RlYnVnZ2VyID0gZ2V0TGliRGVidWdnZXIoJ1ZlcnNpb24nKTtcbiAgaWYgKGNvZGVWZXJzaW9uKSB7XG4gICAgX2RlYnVnZ2VyKGBQbGVhc2UgdXBkYXRlIHRoZSAke09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kfSBmaWxlLiBDbG9zZSBWaXN1YWwgU3R1ZGlvIENvZGUgd2hlbiB5b3UgYXJlIGRvbmUuLi5gKTtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoWydjb2RlJywgJy13JywgY2hhbmdlbG9nUGF0aF0sIHtcbiAgICAgIGlzUXVpZXQ6IHRydWUsXG4gICAgICBzaG91bGRJZ25vcmVFeGl0Q29kZTogdHJ1ZVxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIF9kZWJ1Z2dlcignQ291bGQgbm90IGZpbmQgVmlzdWFsIFN0dWRpbyBDb2RlIGluIHlvdXIgUEFUSC4gVXNpbmcgY29uc29sZSBtb2RlIGluc3RlYWQuJyk7XG4gICAgYXdhaXQgY3JlYXRlSW50ZXJmYWNlKHByb2Nlc3Muc3RkaW4sIHByb2Nlc3Muc3Rkb3V0KS5xdWVzdGlvbihcbiAgICAgIGBQbGVhc2UgdXBkYXRlIHRoZSAke09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kfSBmaWxlLiBQcmVzcyBFbnRlciB3aGVuIHlvdSBhcmUgZG9uZS4uLmBcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogVXBkYXRlcyB0aGUgdmVyc2lvbiBvZiB0aGUgcHJvamVjdCBiYXNlZCBvbiB0aGUgc3BlY2lmaWVkIHVwZGF0ZSB0eXBlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gcGVyZm9ybXMgYSBzZXJpZXMgb2YgdGFza3MgdG8gaGFuZGxlIHZlcnNpb24gdXBkYXRlczpcbiAqIDEuIFZhbGlkYXRlcyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZS5cbiAqIDIuIENoZWNrcyBpZiBHaXQgYW5kIEdpdEh1YiBDTEkgYXJlIGluc3RhbGxlZC5cbiAqIDMuIFZlcmlmaWVzIHRoYXQgdGhlIEdpdCByZXBvc2l0b3J5IGlzIGNsZWFuLlxuICogNC4gUnVucyBzcGVsbGNoZWNrIGFuZCBsaW50aW5nLlxuICogNS4gQnVpbGRzIHRoZSBwcm9qZWN0LlxuICogNi4gVXBkYXRlcyB2ZXJzaW9uIGluIGZpbGVzIGFuZCBjaGFuZ2Vsb2cuXG4gKiA3LiBBZGRzIHVwZGF0ZWQgZmlsZXMgdG8gR2l0LCB0YWdzIHRoZSBjb21taXQsIGFuZCBwdXNoZXMgdG8gdGhlIHJlcG9zaXRvcnkuXG4gKiA4LiBJZiBhbiBPYnNpZGlhbiBwbHVnaW4sIGNvcGllcyB0aGUgdXBkYXRlZCBtYW5pZmVzdCBhbmQgcHVibGlzaGVzIGEgR2l0SHViIHJlbGVhc2UuXG4gKlxuICogQHBhcmFtIHZlcnNpb25VcGRhdGVUeXBlIC0gVGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgdG8gcGVyZm9ybSAobWFqb3IsIG1pbm9yLCBwYXRjaCwgYmV0YSwgb3IgeC55LnpbLWJldGE6dV0pLlxuICogQHBhcmFtIHByZXBhcmVHaXRIdWJSZWxlYXNlIC0gQSBjYWxsYmFjayBmdW5jdGlvbiB0byBwcmVwYXJlIHRoZSBHaXRIdWIgcmVsZWFzZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHZlcnNpb24gdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZT86IHN0cmluZywgcHJlcGFyZUdpdEh1YlJlbGVhc2U/OiAobmV3VmVyc2lvbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghdmVyc2lvblVwZGF0ZVR5cGUpIHtcbiAgICBjb25zdCBucG1PbGRWZXJzaW9uID0gcHJvY2Vzcy5lbnZbJ25wbV9vbGRfdmVyc2lvbiddO1xuICAgIGNvbnN0IG5wbU5ld1ZlcnNpb24gPSBwcm9jZXNzLmVudlsnbnBtX25ld192ZXJzaW9uJ107XG5cbiAgICBpZiAobnBtT2xkVmVyc2lvbiAmJiBucG1OZXdWZXJzaW9uKSB7XG4gICAgICBhd2FpdCB1cGRhdGVWZXJzaW9uSW5GaWxlcyhucG1PbGRWZXJzaW9uKTtcbiAgICAgIGF3YWl0IHVwZGF0ZVZlcnNpb24obnBtTmV3VmVyc2lvbiwgcHJlcGFyZUdpdEh1YlJlbGVhc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignTm8gdmVyc2lvbiB1cGRhdGUgdHlwZSBwcm92aWRlZCcpO1xuICB9XG5cbiAgY29uc3QgaXNPYnNpZGlhblBsdWdpbiA9IGV4aXN0c1N5bmMocmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uKSk7XG5cbiAgdmFsaWRhdGUodmVyc2lvblVwZGF0ZVR5cGUpO1xuICBhd2FpdCBjaGVja0dpdEluc3RhbGxlZCgpO1xuICBhd2FpdCBjaGVja0dpdFJlcG9DbGVhbigpO1xuICBhd2FpdCBjaGVja0dpdEh1YkNsaUluc3RhbGxlZCgpO1xuICBhd2FpdCBucG1SdW4oJ2Zvcm1hdDpjaGVjaycpO1xuICBhd2FpdCBucG1SdW4oJ3NwZWxsY2hlY2snKTtcbiAgYXdhaXQgbnBtUnVuKCdidWlsZCcpO1xuICBhd2FpdCBucG1SdW4oJ2xpbnQnKTtcblxuICBjb25zdCBuZXdWZXJzaW9uID0gYXdhaXQgZ2V0TmV3VmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzKG5ld1ZlcnNpb24pO1xuICBpZiAoaXNPYnNpZGlhblBsdWdpbikge1xuICAgIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzRm9yUGx1Z2luKG5ld1ZlcnNpb24pO1xuICB9XG5cbiAgYXdhaXQgdXBkYXRlQ2hhbmdlbG9nKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBhZGRVcGRhdGVkRmlsZXNUb0dpdChuZXdWZXJzaW9uKTtcbiAgYXdhaXQgYWRkR2l0VGFnKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBnaXRQdXNoKCk7XG4gIGF3YWl0IHByZXBhcmVHaXRIdWJSZWxlYXNlPy4obmV3VmVyc2lvbik7XG4gIGF3YWl0IHB1Ymxpc2hHaXRIdWJSZWxlYXNlKG5ld1ZlcnNpb24sIGlzT2JzaWRpYW5QbHVnaW4pO1xufVxuXG4vKipcbiAqIFVwZGF0ZXMgdGhlIHZlcnNpb24gaW4gdmFyaW91cyBmaWxlcywgaW5jbHVkaW5nIGBwYWNrYWdlLmpzb25gLCBgcGFja2FnZS1sb2NrLmpzb25gLFxuICogYW5kIE9ic2lkaWFuIHBsdWdpbiBtYW5pZmVzdHMgaWYgYXBwbGljYWJsZS5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBzdHJpbmcgdG8gdXBkYXRlIGluIHRoZSBmaWxlcy5cbiAqIEByZXR1cm5zIEEgYFByb21pc2VgIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXMobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGVkaXRQYWNrYWdlSnNvbigocGFja2FnZUpzb24pID0+IHtcbiAgICBwYWNrYWdlSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgfSk7XG5cbiAgYXdhaXQgZWRpdFBhY2thZ2VMb2NrSnNvbih1cGRhdGUsIHsgc2hvdWxkU2tpcElmTWlzc2luZzogdHJ1ZSB9KTtcbiAgYXdhaXQgZWRpdE5wbVNocmlua1dyYXBKc29uKHVwZGF0ZSwgeyBzaG91bGRTa2lwSWZNaXNzaW5nOiB0cnVlIH0pO1xuXG4gIGZ1bmN0aW9uIHVwZGF0ZShwYWNrYWdlTG9ja0pzb246IFBhY2thZ2VMb2NrSnNvbik6IHZvaWQge1xuICAgIHBhY2thZ2VMb2NrSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICBjb25zdCBkZWZhdWx0UGFja2FnZSA9IHBhY2thZ2VMb2NrSnNvbi5wYWNrYWdlcz8uWycnXTtcbiAgICBpZiAoZGVmYXVsdFBhY2thZ2UpIHtcbiAgICAgIGRlZmF1bHRQYWNrYWdlLnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byBlbnN1cmUgaXQgaXMgZWl0aGVyIGEgcmVjb2duaXplZCB0eXBlXG4gKiBvciBhIHZhbGlkIG1hbnVhbCB2ZXJzaW9uIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byB2YWxpZGF0ZS5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIHZlcnNpb24gdXBkYXRlIHR5cGUgaXMgaW52YWxpZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZlcnNpb25VcGRhdGVUeXBlOiBzdHJpbmcpOiB2b2lkIHtcbiAgaWYgKGdldFZlcnNpb25VcGRhdGVUeXBlKHZlcnNpb25VcGRhdGVUeXBlKSA9PT0gVmVyc2lvblVwZGF0ZVR5cGUuSW52YWxpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2ZXJzaW9uIHVwZGF0ZSB0eXBlLiBQbGVhc2UgdXNlIFxcJ21ham9yXFwnLCBcXCdtaW5vclxcJywgXFwncGF0Y2hcXCcsIG9yIFxcJ3gueS56Wy1zdWZmaXhdXFwnIGZvcm1hdC4nKTtcbiAgfVxufVxuXG4vKipcbiAqIEZldGNoZXMgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuIGZyb20gdGhlIEdpdEh1YiByZWxlYXNlcyBBUEkuXG4gKlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuLlxuICovXG5hc3luYyBmdW5jdGlvbiBnZXRMYXRlc3RPYnNpZGlhblZlcnNpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy9vYnNpZGlhbm1kL29ic2lkaWFuLXJlbGVhc2VzL3JlbGVhc2VzL2xhdGVzdCcpO1xuICBjb25zdCBvYnNpZGlhblJlbGVhc2VzSnNvbiA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBQYXJ0aWFsPE9ic2lkaWFuUmVsZWFzZXNKc29uPjtcbiAgcmV0dXJuIG9ic2lkaWFuUmVsZWFzZXNKc29uLm5hbWUgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIG5hbWUgb2YgdGhlIGxhdGVzdCBPYnNpZGlhbiByZWxlYXNlJykpO1xufVxuXG5mdW5jdGlvbiBpc0JldGEodmVyc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiB2ZXJzaW9uLmluY2x1ZGVzKFZlcnNpb25VcGRhdGVUeXBlLkJldGEpO1xufVxuXG5mdW5jdGlvbiB0b1NpbmdsZUxpbmUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBsaW5lcyA9IHN0ci5zcGxpdCgvXFxyP1xcbi8pLmZpbHRlcihCb29sZWFuKTtcbiAgcmV0dXJuIGxpbmVzLmpvaW4oJyAnKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXNGb3JQbHVnaW4obmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG1hbmlmZXN0QmV0YUpzb25QYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RCZXRhSnNvbik7XG4gIGlmIChpc0JldGEobmV3VmVyc2lvbikpIHtcbiAgICBhd2FpdCBjcChcbiAgICAgIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiksXG4gICAgICBtYW5pZmVzdEJldGFKc29uUGF0aCxcbiAgICAgIHsgZm9yY2U6IHRydWUgfVxuICAgICk7XG4gICAgYXdhaXQgZWRpdEpzb248TWFuaWZlc3Q+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0QmV0YUpzb24sIChtYW5pZmVzdCkgPT4ge1xuICAgICAgbWFuaWZlc3QudmVyc2lvbiA9IG5ld1ZlcnNpb247XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGF0ZXN0T2JzaWRpYW5WZXJzaW9uID0gYXdhaXQgZ2V0TGF0ZXN0T2JzaWRpYW5WZXJzaW9uKCk7XG5cbiAgICBhd2FpdCBlZGl0SnNvbjxNYW5pZmVzdD4oT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uLCAobWFuaWZlc3QpID0+IHtcbiAgICAgIG1hbmlmZXN0Lm1pbkFwcFZlcnNpb24gPSBsYXRlc3RPYnNpZGlhblZlcnNpb247XG4gICAgICBtYW5pZmVzdC52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGF3YWl0IGVkaXRKc29uPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLlZlcnNpb25zSnNvbiwgKHZlcnNpb25zKSA9PiB7XG4gICAgICB2ZXJzaW9uc1tuZXdWZXJzaW9uXSA9IGxhdGVzdE9ic2lkaWFuVmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGlmIChleGlzdHNTeW5jKG1hbmlmZXN0QmV0YUpzb25QYXRoKSkge1xuICAgICAgYXdhaXQgcm0obWFuaWZlc3RCZXRhSnNvblBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIGF3YWl0IGNvcHlVcGRhdGVkTWFuaWZlc3QoKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFlQSxTQUFTLHNCQUFzQjtBQUMvQixTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLCtCQUErQjtBQUN4QyxTQUFTLFlBQVk7QUFDckIsU0FBUyxrQkFBa0I7QUFDM0IsU0FBUyxvQkFBb0I7QUFDN0IsU0FBUyxnQkFBZ0I7QUFDekI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsY0FBYztBQUN2QixTQUFTLGlDQUFpQztBQUMxQztBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUtBLElBQUssb0JBQUws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RSxRQUFNLGdCQUFnQixDQUFDLGdCQUFnQjtBQUNyQyxnQkFBWSxVQUFVO0FBQUEsRUFDeEIsQ0FBQztBQUVELFFBQU0sb0JBQW9CLFFBQVEsRUFBRSxxQkFBcUIsS0FBSyxDQUFDO0FBQy9ELFFBQU0sc0JBQXNCLFFBQVEsRUFBRSxxQkFBcUIsS0FBSyxDQUFDO0FBRWpFLFdBQVMsT0FBTyxpQkFBd0M7QUFDdEQsb0JBQWdCLFVBQVU7QUFDMUIsVUFBTSxpQkFBaUIsZ0JBQWdCLFdBQVcsRUFBRTtBQUNwRCxRQUFJLGdCQUFnQjtBQUNsQixxQkFBZSxVQUFVO0FBQUEsSUFDM0I7QUFBQSxFQUNGO0FBQ0Y7QUFTTyxTQUFTLFNBQVMsbUJBQWlDO0FBQ3hELE1BQUkscUJBQXFCLGlCQUFpQixNQUFNLHlCQUEyQjtBQUN6RSxVQUFNLElBQUksTUFBTSxnR0FBd0c7QUFBQSxFQUMxSDtBQUNGO0FBT0EsZUFBZSwyQkFBNEM7QUFDekQsUUFBTSxXQUFXLE1BQU0sTUFBTSwyRUFBMkU7QUFDeEcsUUFBTSx1QkFBdUIsTUFBTSxTQUFTLEtBQUs7QUFDakQsU0FBTyxxQkFBcUIsUUFBUSxnQkFBZ0IsSUFBSSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pIO0FBRUEsU0FBUyxPQUFPLFNBQTBCO0FBQ3hDLFNBQU8sUUFBUSxTQUFTLGlCQUFzQjtBQUNoRDtBQUVBLFNBQVMsYUFBYSxLQUFxQjtBQUN6QyxRQUFNLFFBQVEsSUFBSSxNQUFNLE9BQU8sRUFBRSxPQUFPLE9BQU87QUFDL0MsU0FBTyxNQUFNLEtBQUssR0FBRztBQUN2QjtBQUVBLGVBQWUsOEJBQThCLFlBQW1DO0FBQzlFLFFBQU0sdUJBQXVCLHdCQUF3Qix3QkFBd0IsZ0JBQWdCO0FBQzdGLE1BQUksT0FBTyxVQUFVLEdBQUc7QUFDdEIsVUFBTTtBQUFBLE1BQ0osd0JBQXdCLHdCQUF3QixZQUFZO0FBQUEsTUFDNUQ7QUFBQSxNQUNBLEVBQUUsT0FBTyxLQUFLO0FBQUEsSUFDaEI7QUFDQSxVQUFNLFNBQW1CLHdCQUF3QixrQkFBa0IsQ0FBQyxhQUFhO0FBQy9FLGVBQVMsVUFBVTtBQUFBLElBQ3JCLENBQUM7QUFBQSxFQUNILE9BQU87QUFDTCxVQUFNLHdCQUF3QixNQUFNLHlCQUF5QjtBQUU3RCxVQUFNLFNBQW1CLHdCQUF3QixjQUFjLENBQUMsYUFBYTtBQUMzRSxlQUFTLGdCQUFnQjtBQUN6QixlQUFTLFVBQVU7QUFBQSxJQUNyQixDQUFDO0FBRUQsVUFBTSxTQUFpQyx3QkFBd0IsY0FBYyxDQUFDLGFBQWE7QUFDekYsZUFBUyxVQUFVLElBQUk7QUFBQSxJQUN6QixDQUFDO0FBRUQsUUFBSSxXQUFXLG9CQUFvQixHQUFHO0FBQ3BDLFlBQU0sR0FBRyxvQkFBb0I7QUFBQSxJQUMvQjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLG9CQUFvQjtBQUM1QjsiLAogICJuYW1lcyI6IFsiVmVyc2lvblVwZGF0ZVR5cGUiXQp9Cg==
361
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL3ZlcnNpb24udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIHZlcnNpb25cbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGZ1bmN0aW9ucyBmb3IgbWFuYWdpbmcgdmVyc2lvbiB1cGRhdGVzIGluIGEgcHJvamVjdC5cbiAqIEl0IGluY2x1ZGVzIHRhc2tzIHN1Y2ggYXMgdmFsaWRhdGluZyB2ZXJzaW9uIHVwZGF0ZSB0eXBlcywgY2hlY2tpbmcgdGhlIHN0YXRlXG4gKiBvZiBHaXQgYW5kIEdpdEh1YiBDTEksIHVwZGF0aW5nIHZlcnNpb24gbnVtYmVycyBpbiBmaWxlcywgYW5kIHBlcmZvcm1pbmdcbiAqIEdpdCBvcGVyYXRpb25zIHN1Y2ggYXMgdGFnZ2luZyBhbmQgcHVzaGluZy5cbiAqXG4gKiBUaGUgbWFpbiBmdW5jdGlvbiwgYHVwZGF0ZVZlcnNpb25gLCBjb29yZGluYXRlcyB0aGVzZSB0YXNrcyB0byBlbnN1cmUgdGhhdFxuICogdmVyc2lvbiB1cGRhdGVzIGFyZSBoYW5kbGVkIGNvbnNpc3RlbnRseSBhbmQgY29ycmVjdGx5LiBJdCBhbHNvIGludGVncmF0ZXNcbiAqIHdpdGggT2JzaWRpYW4gcGx1Z2lucywgaWYgYXBwbGljYWJsZSwgYnkgdXBkYXRpbmcgcmVsZXZhbnQgZmlsZXMgYW5kIHJlbGVhc2luZ1xuICogbmV3IHZlcnNpb25zIG9uIEdpdEh1Yi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBhY2thZ2VMb2NrSnNvbiB9IGZyb20gJy4vTnBtLnRzJztcblxuaW1wb3J0IHsgZ2V0TGliRGVidWdnZXIgfSBmcm9tICcuLi9EZWJ1Zy50cyc7XG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBPYnNpZGlhblBsdWdpblJlcG9QYXRocyB9IGZyb20gJy4uL29ic2lkaWFuL1BsdWdpbi9PYnNpZGlhblBsdWdpblJlcG9QYXRocy50cyc7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyByZXBsYWNlQWxsIH0gZnJvbSAnLi4vU3RyaW5nLnRzJztcbmltcG9ydCB7IHJlYWRkaXJQb3NpeCB9IGZyb20gJy4vRnMudHMnO1xuaW1wb3J0IHsgZWRpdEpzb24gfSBmcm9tICcuL0pTT04udHMnO1xuaW1wb3J0IHtcbiAgY3AsXG4gIGNyZWF0ZUludGVyZmFjZSxcbiAgZXhpc3RzU3luYyxcbiAgcmVhZEZpbGUsXG4gIHJtLFxuICB3cml0ZUZpbGVcbn0gZnJvbSAnLi9Ob2RlTW9kdWxlcy50cyc7XG5pbXBvcnQge1xuICBlZGl0TnBtU2hyaW5rV3JhcEpzb24sXG4gIGVkaXRQYWNrYWdlSnNvbixcbiAgZWRpdFBhY2thZ2VMb2NrSnNvbixcbiAgcmVhZFBhY2thZ2VKc29uXG59IGZyb20gJy4vTnBtLnRzJztcbmltcG9ydCB7IG5wbVJ1biB9IGZyb20gJy4vTnBtUnVuLnRzJztcbmltcG9ydCB7IE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMgfSBmcm9tICcuL09ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMudHMnO1xuaW1wb3J0IHtcbiAgZXhlY0Zyb21Sb290LFxuICByZXNvbHZlUGF0aEZyb21Sb290U2FmZVxufSBmcm9tICcuL1Jvb3QudHMnO1xuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIGRpZmZlcmVudCB0eXBlcyBvZiB2ZXJzaW9uIHVwZGF0ZXMuXG4gKi9cbmV4cG9ydCBlbnVtIFZlcnNpb25VcGRhdGVUeXBlIHtcbiAgQmV0YSA9ICdiZXRhJyxcbiAgSW52YWxpZCA9ICdpbnZhbGlkJyxcbiAgTWFqb3IgPSAnbWFqb3InLFxuICBNYW51YWwgPSAnbWFudWFsJyxcbiAgTWlub3IgPSAnbWlub3InLFxuICBQYXRjaCA9ICdwYXRjaCdcbn1cblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyB0aGUgbWFuaWZlc3QgZmlsZSBmb3JtYXQgZm9yIE9ic2lkaWFuIHBsdWdpbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFuaWZlc3Qge1xuICAvKipcbiAgICogVGhlIG1pbmltdW0gT2JzaWRpYW4gdmVyc2lvbiByZXF1aXJlZCBmb3IgdGhlIHBsdWdpbi5cbiAgICovXG4gIG1pbkFwcFZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgdGhlIHBsdWdpbi5cbiAgICovXG4gIHZlcnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyB0aGUgc3RydWN0dXJlIG9mIE9ic2lkaWFuIHJlbGVhc2VzIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JzaWRpYW5SZWxlYXNlc0pzb24ge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIE9ic2lkaWFuIHJlbGVhc2UuXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIEdpdCB0YWcgZm9yIHRoZSBuZXcgdmVyc2lvbi5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgdG8gdXNlIGZvciB0aGUgdGFnLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdGFnIGhhcyBiZWVuIGNyZWF0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRHaXRUYWcobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChgZ2l0IHRhZyAtYSAke25ld1ZlcnNpb259IC1tICR7bmV3VmVyc2lvbn0gLS1mb3JjZWAsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbn1cblxuLyoqXG4gKiBBZGRzIHVwZGF0ZWQgZmlsZXMgdG8gdGhlIEdpdCBzdGFnaW5nIGFyZWEgYW5kIGNvbW1pdHMgdGhlbSB3aXRoIHRoZSBuZXcgdmVyc2lvbiBtZXNzYWdlLlxuICpcbiAqIEBwYXJhbSBuZXdWZXJzaW9uIC0gVGhlIG5ldyB2ZXJzaW9uIG51bWJlciB1c2VkIGFzIHRoZSBjb21taXQgbWVzc2FnZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGZpbGVzIGhhdmUgYmVlbiBhZGRlZCBhbmQgY29tbWl0dGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYWRkVXBkYXRlZEZpbGVzVG9HaXQobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChbJ2dpdCcsICdhZGQnLCAnLS1hbGwnXSwgeyBpc1F1aWV0OiB0cnVlIH0pO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoYGdpdCBjb21taXQgLW0gJHtuZXdWZXJzaW9ufSAtLWFsbG93LWVtcHR5YCwgeyBpc1F1aWV0OiB0cnVlIH0pO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgR2l0SHViIENMSSBpcyBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbS5cbiAqXG4gKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIEdpdEh1YiBDTEkgaXMgbm90IGluc3RhbGxlZC5cbiAqXG4gKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBHaXRIdWIgQ0xJIGlzIG5vdCBpbnN0YWxsZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0dpdEh1YkNsaUluc3RhbGxlZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoJ2doIC0tdmVyc2lvbicsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHaXRIdWIgQ0xJIGlzIG5vdCBpbnN0YWxsZWQuIFBsZWFzZSBpbnN0YWxsIGl0IGZyb20gaHR0cHM6Ly9jbGkuZ2l0aHViLmNvbS8nKTtcbiAgfVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiBHaXQgaXMgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0uXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIEdpdCBpcyBub3QgaW5zdGFsbGVkLlxuICpcbiAqIEB0aHJvd3MgRXJyb3IgaWYgR2l0IGlzIG5vdCBpbnN0YWxsZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0dpdEluc3RhbGxlZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoJ2dpdCAtLXZlcnNpb24nLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBFcnJvcignR2l0IGlzIG5vdCBpbnN0YWxsZWQuIFBsZWFzZSBpbnN0YWxsIGl0IGZyb20gaHR0cHM6Ly9naXQtc2NtLmNvbS8nKTtcbiAgfVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgR2l0IHJlcG9zaXRvcnkgaXMgY2xlYW4sIG1lYW5pbmcgdGhlcmUgYXJlIG5vIHVuY29tbWl0dGVkIGNoYW5nZXMuXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBHaXQgcmVwb3NpdG9yeSBpcyBub3QgY2xlYW4uXG4gKlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgR2l0IHJlcG9zaXRvcnkgaXMgbm90IGNsZWFuLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2hlY2tHaXRSZXBvQ2xlYW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3Rkb3V0ID0gYXdhaXQgZXhlY0Zyb21Sb290KCdnaXQgc3RhdHVzIC0tcG9yY2VsYWluIC0tdW50cmFja2VkLWZpbGVzPWFsbCcsIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgICBpZiAoc3Rkb3V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoKTtcbiAgICB9XG4gIH0gY2F0Y2gge1xuICAgIHRocm93IG5ldyBFcnJvcignR2l0IHJlcG9zaXRvcnkgaXMgbm90IGNsZWFuLiBQbGVhc2UgY29tbWl0IG9yIHN0YXNoIHlvdXIgY2hhbmdlcyBiZWZvcmUgcmVsZWFzaW5nIGEgbmV3IHZlcnNpb24uJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDb3BpZXMgdGhlIHVwZGF0ZWQgbWFuaWZlc3QgZmlsZSB0byB0aGUgZGlzdHJpYnV0aW9uIGJ1aWxkIGRpcmVjdG9yeS5cbiAqXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjb3B5IG9wZXJhdGlvbiBpcyBjb21wbGV0ZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNvcHlVcGRhdGVkTWFuaWZlc3QoKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGNwKFxuICAgIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiksXG4gICAgcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoam9pbihPYnNpZGlhblBsdWdpblJlcG9QYXRocy5EaXN0QnVpbGQsIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbikpLFxuICAgIHsgZm9yY2U6IHRydWUgfVxuICApO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlcyBhIG5ldyB2ZXJzaW9uIHN0cmluZyBiYXNlZCBvbiB0aGUgY3VycmVudCB2ZXJzaW9uIGFuZCB0aGUgc3BlY2lmaWVkIHVwZGF0ZSB0eXBlLlxuICpcbiAqIEBwYXJhbSB2ZXJzaW9uVXBkYXRlVHlwZSAtIFRoZSB0eXBlIG9mIHZlcnNpb24gdXBkYXRlIChtYWpvciwgbWlub3IsIHBhdGNoLCBiZXRhLCBvciBtYW51YWwpLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB0aGUgbmV3IHZlcnNpb24gc3RyaW5nLlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgY3VycmVudCB2ZXJzaW9uIGZvcm1hdCBpcyBpbnZhbGlkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TmV3VmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgdmVyc2lvblR5cGUgPSBnZXRWZXJzaW9uVXBkYXRlVHlwZSh2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGlmICh2ZXJzaW9uVHlwZSA9PT0gVmVyc2lvblVwZGF0ZVR5cGUuTWFudWFsKSB7XG4gICAgcmV0dXJuIHZlcnNpb25VcGRhdGVUeXBlO1xuICB9XG5cbiAgY29uc3QgcGFja2FnZUpzb24gPSBhd2FpdCByZWFkUGFja2FnZUpzb24oKTtcbiAgY29uc3QgY3VycmVudFZlcnNpb24gPSBwYWNrYWdlSnNvbi52ZXJzaW9uID8/ICcnO1xuXG4gIGNvbnN0IG1hdGNoID0gL14oPzxNYWpvcj5cXGQrKVxcLig/PE1pbm9yPlxcZCspXFwuKD88UGF0Y2g+XFxkKykoPzotYmV0YVxcLig/PEJldGE+XFxkKykpPyQvLmV4ZWMoY3VycmVudFZlcnNpb24pO1xuICBpZiAoIW1hdGNoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGN1cnJlbnQgdmVyc2lvbiBmb3JtYXQ6ICR7Y3VycmVudFZlcnNpb259YCk7XG4gIH1cblxuICBsZXQgbWFqb3IgPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ01ham9yJ10gPz8gJycpO1xuICBsZXQgbWlub3IgPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ01pbm9yJ10gPz8gJycpO1xuICBsZXQgcGF0Y2ggPSBOdW1iZXIobWF0Y2guZ3JvdXBzPy5bJ1BhdGNoJ10gPz8gJycpO1xuICBsZXQgYmV0YSA9IE51bWJlcihtYXRjaC5ncm91cHM/LlsnQmV0YSddID8/ICcnKTtcblxuICBzd2l0Y2ggKHZlcnNpb25UeXBlKSB7XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5CZXRhOlxuICAgICAgaWYgKGJldGEgPT09IDApIHtcbiAgICAgICAgcGF0Y2grKztcbiAgICAgIH1cbiAgICAgIGJldGErKztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuTWFqb3I6XG4gICAgICBtYWpvcisrO1xuICAgICAgbWlub3IgPSAwO1xuICAgICAgcGF0Y2ggPSAwO1xuICAgICAgYmV0YSA9IDA7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLk1pbm9yOlxuICAgICAgbWlub3IrKztcbiAgICAgIHBhdGNoID0gMDtcbiAgICAgIGJldGEgPSAwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5QYXRjaDpcbiAgICAgIGlmIChiZXRhID09PSAwKSB7XG4gICAgICAgIHBhdGNoKys7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBiZXRhID0gMDtcbiAgICAgIH1cbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdmVyc2lvbiB1cGRhdGUgdHlwZTogJHt2ZXJzaW9uVHlwZX1gKTtcbiAgfVxuXG4gIHJldHVybiBgJHttYWpvci50b1N0cmluZygpfS4ke21pbm9yLnRvU3RyaW5nKCl9LiR7cGF0Y2gudG9TdHJpbmcoKX0ke2JldGEgPiAwID8gYC1iZXRhLiR7YmV0YS50b1N0cmluZygpfWAgOiAnJ31gO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgcmVsZWFzZSBub3RlcyBmb3IgYSBzcGVjaWZpYyB2ZXJzaW9uIGZyb20gdGhlIGNoYW5nZWxvZy5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBudW1iZXIgZm9yIHdoaWNoIHRvIGdldCB0aGUgcmVsZWFzZSBub3Rlcy5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSByZWxlYXNlIG5vdGVzIGZvciB0aGUgc3BlY2lmaWVkIHZlcnNpb24uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRSZWxlYXNlTm90ZXMobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgY2hhbmdlbG9nUGF0aCA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kKTtcbiAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGNoYW5nZWxvZ1BhdGgsICd1dGYtOCcpO1xuICBjb25zdCBuZXdWZXJzaW9uRXNjYXBlZCA9IHJlcGxhY2VBbGwobmV3VmVyc2lvbiwgJy4nLCAnXFxcXC4nKTtcbiAgY29uc3QgbWF0Y2ggPSBuZXcgUmVnRXhwKGBcXG4jIyAke25ld1ZlcnNpb25Fc2NhcGVkfVxcblxcbigoLnxcXG4pKz8pXFxuXFxuIyNgKS5leGVjKGNvbnRlbnQpO1xuICBsZXQgcmVsZWFzZU5vdGVzID0gbWF0Y2g/LlsxXSA/IGAke21hdGNoWzFdfVxcblxcbmAgOiAnJztcblxuICBjb25zdCB0YWdzID0gKGF3YWl0IGV4ZWNGcm9tUm9vdCgnZ2l0IHRhZyAtLXNvcnQ9LWNyZWF0b3JkYXRlJywgeyBpc1F1aWV0OiB0cnVlIH0pKS5zcGxpdCgvXFxyP1xcbi8pO1xuICBjb25zdCBwcmV2aW91c1ZlcnNpb24gPSB0YWdzWzFdO1xuICBsZXQgY2hhbmdlc1VybDogc3RyaW5nO1xuXG4gIGNvbnN0IHJlcG9VcmwgPSBhd2FpdCBleGVjRnJvbVJvb3QoJ2doIHJlcG8gdmlldyAtLWpzb24gdXJsIC1xIC51cmwnLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG5cbiAgaWYgKHByZXZpb3VzVmVyc2lvbikge1xuICAgIGNoYW5nZXNVcmwgPSBgJHtyZXBvVXJsfS9jb21wYXJlLyR7cHJldmlvdXNWZXJzaW9ufS4uLiR7bmV3VmVyc2lvbn1gO1xuICB9IGVsc2Uge1xuICAgIGNoYW5nZXNVcmwgPSBgJHtyZXBvVXJsfS9jb21taXRzLyR7bmV3VmVyc2lvbn1gO1xuICB9XG5cbiAgcmVsZWFzZU5vdGVzICs9IGAqKkZ1bGwgQ2hhbmdlbG9nKio6ICR7Y2hhbmdlc1VybH1gO1xuICByZXR1cm4gcmVsZWFzZU5vdGVzO1xufVxuXG4vKipcbiAqIERldGVybWluZXMgdGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgYmFzZWQgb24gdGhlIGlucHV0IHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgaW5wdXQgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZS5cbiAqIEByZXR1cm5zIFRoZSBjb3JyZXNwb25kaW5nIGBWZXJzaW9uVXBkYXRlVHlwZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRWZXJzaW9uVXBkYXRlVHlwZSh2ZXJzaW9uVXBkYXRlVHlwZTogc3RyaW5nKTogVmVyc2lvblVwZGF0ZVR5cGUge1xuICBjb25zdCB2ZXJzaW9uVXBkYXRlVHlwZUVudW0gPSB2ZXJzaW9uVXBkYXRlVHlwZSBhcyBWZXJzaW9uVXBkYXRlVHlwZTtcbiAgc3dpdGNoICh2ZXJzaW9uVXBkYXRlVHlwZUVudW0pIHtcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLkJldGE6XG4gICAgY2FzZSBWZXJzaW9uVXBkYXRlVHlwZS5NYWpvcjpcbiAgICBjYXNlIFZlcnNpb25VcGRhdGVUeXBlLk1pbm9yOlxuICAgIGNhc2UgVmVyc2lvblVwZGF0ZVR5cGUuUGF0Y2g6XG4gICAgICByZXR1cm4gdmVyc2lvblVwZGF0ZVR5cGVFbnVtO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIGlmICgvXlxcZCtcXC5cXGQrXFwuXFxkKyg/Oi1bXFx3XFxkLi1dKyk/JC8udGVzdCh2ZXJzaW9uVXBkYXRlVHlwZSkpIHtcbiAgICAgICAgcmV0dXJuIFZlcnNpb25VcGRhdGVUeXBlLk1hbnVhbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIFZlcnNpb25VcGRhdGVUeXBlLkludmFsaWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBQdXNoZXMgY29tbWl0cyBhbmQgdGFncyB0byB0aGUgcmVtb3RlIEdpdCByZXBvc2l0b3J5LlxuICpcbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHB1c2ggb3BlcmF0aW9uIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2l0UHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgZXhlY0Zyb21Sb290KCdnaXQgcHVzaCAtLWZvbGxvdy10YWdzIC0tZm9yY2UnLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG59XG5cbi8qKlxuICogUHVibGlzaGVzIGEgR2l0SHViIHJlbGVhc2UgZm9yIHRoZSBuZXcgdmVyc2lvbi5cbiAqXG4gKiBIYW5kbGVzIHRoZSBjcmVhdGlvbiBvZiBhIHJlbGVhc2UgYW5kIHVwbG9hZGluZyBmaWxlcyBmb3IgZWl0aGVyIGFuIE9ic2lkaWFuIHBsdWdpbiBvciBhbm90aGVyIHByb2plY3QuXG4gKlxuICogQHBhcmFtIG5ld1ZlcnNpb24gLSBUaGUgbmV3IHZlcnNpb24gbnVtYmVyIGZvciB0aGUgcmVsZWFzZS5cbiAqIEBwYXJhbSBpc09ic2lkaWFuUGx1Z2luIC0gQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHByb2plY3QgaXMgYW4gT2JzaWRpYW4gcGx1Z2luLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgcmVsZWFzZSBoYXMgYmVlbiBwdWJsaXNoZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwdWJsaXNoR2l0SHViUmVsZWFzZShuZXdWZXJzaW9uOiBzdHJpbmcsIGlzT2JzaWRpYW5QbHVnaW46IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgbGV0IGZpbGVQYXRoczogc3RyaW5nW107XG5cbiAgaWYgKGlzT2JzaWRpYW5QbHVnaW4pIHtcbiAgICBjb25zdCBidWlsZERpciA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkRpc3RCdWlsZCk7XG4gICAgY29uc3QgZmlsZU5hbWVzID0gYXdhaXQgcmVhZGRpclBvc2l4KGJ1aWxkRGlyKTtcbiAgICBmaWxlUGF0aHMgPSBmaWxlTmFtZXMubWFwKChmaWxlTmFtZSkgPT4gam9pbihidWlsZERpciwgZmlsZU5hbWUpKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCByZXN1bHRKc29uID0gYXdhaXQgZXhlY0Zyb21Sb290KFsnbnBtJywgJ3BhY2snLCAnLS1wYWNrLWRlc3RpbmF0aW9uJywgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5EaXN0LCAnLS1qc29uJ10sIHsgaXNRdWlldDogdHJ1ZSB9KTtcbiAgICBjb25zdCByZXN1bHQgPSBKU09OLnBhcnNlKHJlc3VsdEpzb24pIGFzIFt7IGZpbGVuYW1lOiBzdHJpbmcgfV07XG4gICAgZmlsZVBhdGhzID0gW1xuICAgICAgam9pbihPYnNpZGlhbkRldlV0aWxzUmVwb1BhdGhzLkRpc3QsIHJlc3VsdFswXS5maWxlbmFtZSksXG4gICAgICBqb2luKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRGlzdCwgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5TdHlsZXNDc3MpXG4gICAgXTtcbiAgfVxuXG4gIGZpbGVQYXRocyA9IGZpbGVQYXRocy5maWx0ZXIoKGZpbGVQYXRoKSA9PiBleGlzdHNTeW5jKHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKGZpbGVQYXRoKSkpO1xuXG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChbXG4gICAgJ2doJyxcbiAgICAncmVsZWFzZScsXG4gICAgJ2NyZWF0ZScsXG4gICAgbmV3VmVyc2lvbixcbiAgICAuLi5maWxlUGF0aHMsXG4gICAgJy0tdGl0bGUnLFxuICAgIGB2JHtuZXdWZXJzaW9ufWAsXG4gICAgLi4uKGlzQmV0YShuZXdWZXJzaW9uKSA/IFsnLS1wcmVyZWxlYXNlJ10gOiBbXSksXG4gICAgJy0tbm90ZXMtZmlsZScsXG4gICAgJy0nXG4gIF0sIHtcbiAgICBpc1F1aWV0OiB0cnVlLFxuICAgIHN0ZGluOiBhd2FpdCBnZXRSZWxlYXNlTm90ZXMobmV3VmVyc2lvbilcbiAgfSk7XG59XG5cbi8qKlxuICogVXBkYXRlcyB0aGUgY2hhbmdlbG9nIGZpbGUgd2l0aCBuZXcgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgY29tbWl0IG1lc3NhZ2VzLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gcmVhZHMgdGhlIGN1cnJlbnQgY2hhbmdlbG9nLCBhcHBlbmRzIG5ldyBlbnRyaWVzIGZvciB0aGUgbGF0ZXN0IHZlcnNpb24sXG4gKiBhbmQgcHJvbXB0cyB0aGUgdXNlciB0byByZXZpZXcgdGhlIGNoYW5nZXMuXG4gKlxuICogQHBhcmFtIG5ld1ZlcnNpb24gLSBUaGUgbmV3IHZlcnNpb24gbnVtYmVyIHRvIGJlIGFkZGVkIHRvIHRoZSBjaGFuZ2Vsb2cuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBjaGFuZ2Vsb2cgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlQ2hhbmdlbG9nKG5ld1ZlcnNpb246IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBIRUFERVJfTElORVNfQ09VTlQgPSAyO1xuICBjb25zdCBjaGFuZ2Vsb2dQYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuQ2hhbmdlbG9nTWQpO1xuICBsZXQgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lczogc3RyaW5nW107XG4gIGlmIChleGlzdHNTeW5jKGNoYW5nZWxvZ1BhdGgpKSB7XG4gICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGNoYW5nZWxvZ1BhdGgsICd1dGYtOCcpO1xuICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMgPSBjb250ZW50LnNwbGl0KCdcXG4nKS5zbGljZShIRUFERVJfTElORVNfQ09VTlQpO1xuICAgIGlmIChwcmV2aW91c0NoYW5nZWxvZ0xpbmVzLmF0KC0xKSA9PT0gJycpIHtcbiAgICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMucG9wKCk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHByZXZpb3VzQ2hhbmdlbG9nTGluZXMgPSBbXTtcbiAgfVxuXG4gIGNvbnN0IGxhc3RUYWcgPSByZXBsYWNlQWxsKHByZXZpb3VzQ2hhbmdlbG9nTGluZXNbMF0gPz8gJycsICcjIyAnLCAnJyk7XG4gIGNvbnN0IGNvbW1pdFJhbmdlID0gbGFzdFRhZyA/IGAke2xhc3RUYWd9Li5IRUFEYCA6ICdIRUFEJztcbiAgY29uc3QgY29tbWl0TWVzc2FnZXNTdHIgPSBhd2FpdCBleGVjRnJvbVJvb3QoYGdpdCBsb2cgJHtjb21taXRSYW5nZX0gLS1mb3JtYXQ9JUIgLS1maXJzdC1wYXJlbnQgLXpgLCB7IGlzUXVpZXQ6IHRydWUgfSk7XG4gIGNvbnN0IGNvbW1pdE1lc3NhZ2VzID0gY29tbWl0TWVzc2FnZXNTdHIuc3BsaXQoJ1xcMCcpLmZpbHRlcihCb29sZWFuKS5tYXAodG9TaW5nbGVMaW5lKTtcblxuICBsZXQgbmV3Q2hhbmdlTG9nID0gYCMgQ0hBTkdFTE9HXFxuXFxuIyMgJHtuZXdWZXJzaW9ufVxcblxcbmA7XG5cbiAgZm9yIChjb25zdCBtZXNzYWdlIG9mIGNvbW1pdE1lc3NhZ2VzKSB7XG4gICAgbmV3Q2hhbmdlTG9nICs9IGAtICR7bWVzc2FnZX1cXG5gO1xuICB9XG5cbiAgaWYgKHByZXZpb3VzQ2hhbmdlbG9nTGluZXMubGVuZ3RoID4gMCkge1xuICAgIG5ld0NoYW5nZUxvZyArPSAnXFxuJztcbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgcHJldmlvdXNDaGFuZ2Vsb2dMaW5lcykge1xuICAgICAgbmV3Q2hhbmdlTG9nICs9IGAke2xpbmV9XFxuYDtcbiAgICB9XG4gIH1cblxuICBhd2FpdCB3cml0ZUZpbGUoY2hhbmdlbG9nUGF0aCwgbmV3Q2hhbmdlTG9nLCAndXRmLTgnKTtcblxuICBjb25zdCBjb2RlVmVyc2lvbiA9IGF3YWl0IGV4ZWNGcm9tUm9vdCgnY29kZSAtLXZlcnNpb24nLCB7XG4gICAgaXNRdWlldDogdHJ1ZSxcbiAgICBzaG91bGRJZ25vcmVFeGl0Q29kZTogdHJ1ZVxuICB9KTtcbiAgY29uc3QgX2RlYnVnZ2VyID0gZ2V0TGliRGVidWdnZXIoJ1ZlcnNpb24nKTtcbiAgaWYgKGNvZGVWZXJzaW9uKSB7XG4gICAgX2RlYnVnZ2VyKGBQbGVhc2UgdXBkYXRlIHRoZSAke09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kfSBmaWxlLiBDbG9zZSBWaXN1YWwgU3R1ZGlvIENvZGUgd2hlbiB5b3UgYXJlIGRvbmUuLi5gKTtcbiAgICBhd2FpdCBleGVjRnJvbVJvb3QoWydjb2RlJywgJy13JywgY2hhbmdlbG9nUGF0aF0sIHtcbiAgICAgIGlzUXVpZXQ6IHRydWUsXG4gICAgICBzaG91bGRJZ25vcmVFeGl0Q29kZTogdHJ1ZVxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIF9kZWJ1Z2dlcignQ291bGQgbm90IGZpbmQgVmlzdWFsIFN0dWRpbyBDb2RlIGluIHlvdXIgUEFUSC4gVXNpbmcgY29uc29sZSBtb2RlIGluc3RlYWQuJyk7XG4gICAgYXdhaXQgY3JlYXRlSW50ZXJmYWNlKHByb2Nlc3Muc3RkaW4sIHByb2Nlc3Muc3Rkb3V0KS5xdWVzdGlvbihcbiAgICAgIGBQbGVhc2UgdXBkYXRlIHRoZSAke09ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkNoYW5nZWxvZ01kfSBmaWxlLiBQcmVzcyBFbnRlciB3aGVuIHlvdSBhcmUgZG9uZS4uLmBcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogVXBkYXRlcyB0aGUgdmVyc2lvbiBvZiB0aGUgcHJvamVjdCBiYXNlZCBvbiB0aGUgc3BlY2lmaWVkIHVwZGF0ZSB0eXBlLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gcGVyZm9ybXMgYSBzZXJpZXMgb2YgdGFza3MgdG8gaGFuZGxlIHZlcnNpb24gdXBkYXRlczpcbiAqIDEuIFZhbGlkYXRlcyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZS5cbiAqIDIuIENoZWNrcyBpZiBHaXQgYW5kIEdpdEh1YiBDTEkgYXJlIGluc3RhbGxlZC5cbiAqIDMuIFZlcmlmaWVzIHRoYXQgdGhlIEdpdCByZXBvc2l0b3J5IGlzIGNsZWFuLlxuICogNC4gUnVucyBzcGVsbGNoZWNrIGFuZCBsaW50aW5nLlxuICogNS4gQnVpbGRzIHRoZSBwcm9qZWN0LlxuICogNi4gVXBkYXRlcyB2ZXJzaW9uIGluIGZpbGVzIGFuZCBjaGFuZ2Vsb2cuXG4gKiA3LiBBZGRzIHVwZGF0ZWQgZmlsZXMgdG8gR2l0LCB0YWdzIHRoZSBjb21taXQsIGFuZCBwdXNoZXMgdG8gdGhlIHJlcG9zaXRvcnkuXG4gKiA4LiBJZiBhbiBPYnNpZGlhbiBwbHVnaW4sIGNvcGllcyB0aGUgdXBkYXRlZCBtYW5pZmVzdCBhbmQgcHVibGlzaGVzIGEgR2l0SHViIHJlbGVhc2UuXG4gKlxuICogQHBhcmFtIHZlcnNpb25VcGRhdGVUeXBlIC0gVGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgdG8gcGVyZm9ybSAobWFqb3IsIG1pbm9yLCBwYXRjaCwgYmV0YSwgb3IgeC55LnpbLWJldGE6dV0pLlxuICogQHBhcmFtIHByZXBhcmVHaXRIdWJSZWxlYXNlIC0gQSBjYWxsYmFjayBmdW5jdGlvbiB0byBwcmVwYXJlIHRoZSBHaXRIdWIgcmVsZWFzZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHZlcnNpb24gdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZT86IHN0cmluZywgcHJlcGFyZUdpdEh1YlJlbGVhc2U/OiAobmV3VmVyc2lvbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghdmVyc2lvblVwZGF0ZVR5cGUpIHtcbiAgICBjb25zdCBucG1PbGRWZXJzaW9uID0gcHJvY2Vzcy5lbnZbJ25wbV9vbGRfdmVyc2lvbiddO1xuICAgIGNvbnN0IG5wbU5ld1ZlcnNpb24gPSBwcm9jZXNzLmVudlsnbnBtX25ld192ZXJzaW9uJ107XG5cbiAgICBpZiAobnBtT2xkVmVyc2lvbiAmJiBucG1OZXdWZXJzaW9uKSB7XG4gICAgICBhd2FpdCB1cGRhdGVWZXJzaW9uSW5GaWxlcyhucG1PbGRWZXJzaW9uKTtcbiAgICAgIGF3YWl0IHVwZGF0ZVZlcnNpb24obnBtTmV3VmVyc2lvbiwgcHJlcGFyZUdpdEh1YlJlbGVhc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignTm8gdmVyc2lvbiB1cGRhdGUgdHlwZSBwcm92aWRlZCcpO1xuICB9XG5cbiAgY29uc3QgaXNPYnNpZGlhblBsdWdpbiA9IGV4aXN0c1N5bmMocmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uKSk7XG5cbiAgdmFsaWRhdGUodmVyc2lvblVwZGF0ZVR5cGUpO1xuICBhd2FpdCBjaGVja0dpdEluc3RhbGxlZCgpO1xuICBhd2FpdCBjaGVja0dpdFJlcG9DbGVhbigpO1xuICBhd2FpdCBjaGVja0dpdEh1YkNsaUluc3RhbGxlZCgpO1xuICBhd2FpdCBucG1SdW4oJ2Zvcm1hdDpjaGVjaycpO1xuICBhd2FpdCBucG1SdW4oJ3NwZWxsY2hlY2snKTtcbiAgYXdhaXQgbnBtUnVuKCdidWlsZCcpO1xuICBhd2FpdCBucG1SdW4oJ2xpbnQnKTtcblxuICBjb25zdCBuZXdWZXJzaW9uID0gYXdhaXQgZ2V0TmV3VmVyc2lvbih2ZXJzaW9uVXBkYXRlVHlwZSk7XG4gIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzKG5ld1ZlcnNpb24pO1xuICBpZiAoaXNPYnNpZGlhblBsdWdpbikge1xuICAgIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzRm9yUGx1Z2luKG5ld1ZlcnNpb24pO1xuICB9XG5cbiAgYXdhaXQgdXBkYXRlQ2hhbmdlbG9nKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBhZGRVcGRhdGVkRmlsZXNUb0dpdChuZXdWZXJzaW9uKTtcbiAgYXdhaXQgYWRkR2l0VGFnKG5ld1ZlcnNpb24pO1xuICBhd2FpdCBnaXRQdXNoKCk7XG4gIGF3YWl0IHByZXBhcmVHaXRIdWJSZWxlYXNlPy4obmV3VmVyc2lvbik7XG4gIGF3YWl0IHB1Ymxpc2hHaXRIdWJSZWxlYXNlKG5ld1ZlcnNpb24sIGlzT2JzaWRpYW5QbHVnaW4pO1xufVxuXG4vKipcbiAqIFVwZGF0ZXMgdGhlIHZlcnNpb24gaW4gdmFyaW91cyBmaWxlcywgaW5jbHVkaW5nIGBwYWNrYWdlLmpzb25gLCBgcGFja2FnZS1sb2NrLmpzb25gLFxuICogYW5kIE9ic2lkaWFuIHBsdWdpbiBtYW5pZmVzdHMgaWYgYXBwbGljYWJsZS5cbiAqXG4gKiBAcGFyYW0gbmV3VmVyc2lvbiAtIFRoZSBuZXcgdmVyc2lvbiBzdHJpbmcgdG8gdXBkYXRlIGluIHRoZSBmaWxlcy5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXMobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGVkaXRQYWNrYWdlSnNvbigocGFja2FnZUpzb24pID0+IHtcbiAgICBwYWNrYWdlSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgfSk7XG5cbiAgYXdhaXQgZWRpdFBhY2thZ2VMb2NrSnNvbih1cGRhdGUsIHsgc2hvdWxkU2tpcElmTWlzc2luZzogdHJ1ZSB9KTtcbiAgYXdhaXQgZWRpdE5wbVNocmlua1dyYXBKc29uKHVwZGF0ZSwgeyBzaG91bGRTa2lwSWZNaXNzaW5nOiB0cnVlIH0pO1xuXG4gIGZ1bmN0aW9uIHVwZGF0ZShwYWNrYWdlTG9ja0pzb246IFBhY2thZ2VMb2NrSnNvbik6IHZvaWQge1xuICAgIHBhY2thZ2VMb2NrSnNvbi52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICBjb25zdCBkZWZhdWx0UGFja2FnZSA9IHBhY2thZ2VMb2NrSnNvbi5wYWNrYWdlcz8uWycnXTtcbiAgICBpZiAoZGVmYXVsdFBhY2thZ2UpIHtcbiAgICAgIGRlZmF1bHRQYWNrYWdlLnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyB0aGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byBlbnN1cmUgaXQgaXMgZWl0aGVyIGEgcmVjb2duaXplZCB0eXBlXG4gKiBvciBhIHZhbGlkIG1hbnVhbCB2ZXJzaW9uIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmVyc2lvblVwZGF0ZVR5cGUgLSBUaGUgdmVyc2lvbiB1cGRhdGUgdHlwZSB0byB2YWxpZGF0ZS5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIHZlcnNpb24gdXBkYXRlIHR5cGUgaXMgaW52YWxpZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHZlcnNpb25VcGRhdGVUeXBlOiBzdHJpbmcpOiB2b2lkIHtcbiAgaWYgKGdldFZlcnNpb25VcGRhdGVUeXBlKHZlcnNpb25VcGRhdGVUeXBlKSA9PT0gVmVyc2lvblVwZGF0ZVR5cGUuSW52YWxpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2ZXJzaW9uIHVwZGF0ZSB0eXBlLiBQbGVhc2UgdXNlIFxcJ21ham9yXFwnLCBcXCdtaW5vclxcJywgXFwncGF0Y2hcXCcsIG9yIFxcJ3gueS56Wy1zdWZmaXhdXFwnIGZvcm1hdC4nKTtcbiAgfVxufVxuXG4vKipcbiAqIEZldGNoZXMgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuIGZyb20gdGhlIEdpdEh1YiByZWxlYXNlcyBBUEkuXG4gKlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIE9ic2lkaWFuLlxuICovXG5hc3luYyBmdW5jdGlvbiBnZXRMYXRlc3RPYnNpZGlhblZlcnNpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbS9yZXBvcy9vYnNpZGlhbm1kL29ic2lkaWFuLXJlbGVhc2VzL3JlbGVhc2VzL2xhdGVzdCcpO1xuICBjb25zdCBvYnNpZGlhblJlbGVhc2VzSnNvbiA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBQYXJ0aWFsPE9ic2lkaWFuUmVsZWFzZXNKc29uPjtcbiAgcmV0dXJuIG9ic2lkaWFuUmVsZWFzZXNKc29uLm5hbWUgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignQ291bGQgbm90IGZpbmQgdGhlIG5hbWUgb2YgdGhlIGxhdGVzdCBPYnNpZGlhbiByZWxlYXNlJykpO1xufVxuXG5mdW5jdGlvbiBpc0JldGEodmVyc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiB2ZXJzaW9uLmluY2x1ZGVzKFZlcnNpb25VcGRhdGVUeXBlLkJldGEpO1xufVxuXG5mdW5jdGlvbiB0b1NpbmdsZUxpbmUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBsaW5lcyA9IHN0ci5zcGxpdCgvXFxyP1xcbi8pLmZpbHRlcihCb29sZWFuKTtcbiAgcmV0dXJuIGxpbmVzLmpvaW4oJyAnKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlVmVyc2lvbkluRmlsZXNGb3JQbHVnaW4obmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG1hbmlmZXN0QmV0YUpzb25QYXRoID0gcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RCZXRhSnNvbik7XG4gIGlmIChpc0JldGEobmV3VmVyc2lvbikpIHtcbiAgICBhd2FpdCBjcChcbiAgICAgIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiksXG4gICAgICBtYW5pZmVzdEJldGFKc29uUGF0aCxcbiAgICAgIHsgZm9yY2U6IHRydWUgfVxuICAgICk7XG4gICAgYXdhaXQgZWRpdEpzb248TWFuaWZlc3Q+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0QmV0YUpzb24sIChtYW5pZmVzdCkgPT4ge1xuICAgICAgbWFuaWZlc3QudmVyc2lvbiA9IG5ld1ZlcnNpb247XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGF0ZXN0T2JzaWRpYW5WZXJzaW9uID0gYXdhaXQgZ2V0TGF0ZXN0T2JzaWRpYW5WZXJzaW9uKCk7XG5cbiAgICBhd2FpdCBlZGl0SnNvbjxNYW5pZmVzdD4oT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RKc29uLCAobWFuaWZlc3QpID0+IHtcbiAgICAgIG1hbmlmZXN0Lm1pbkFwcFZlcnNpb24gPSBsYXRlc3RPYnNpZGlhblZlcnNpb247XG4gICAgICBtYW5pZmVzdC52ZXJzaW9uID0gbmV3VmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGF3YWl0IGVkaXRKc29uPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLlZlcnNpb25zSnNvbiwgKHZlcnNpb25zKSA9PiB7XG4gICAgICB2ZXJzaW9uc1tuZXdWZXJzaW9uXSA9IGxhdGVzdE9ic2lkaWFuVmVyc2lvbjtcbiAgICB9KTtcblxuICAgIGlmIChleGlzdHNTeW5jKG1hbmlmZXN0QmV0YUpzb25QYXRoKSkge1xuICAgICAgYXdhaXQgcm0obWFuaWZlc3RCZXRhSnNvblBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIGF3YWl0IGNvcHlVcGRhdGVkTWFuaWZlc3QoKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFlQSxTQUFTLHNCQUFzQjtBQUMvQixTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLCtCQUErQjtBQUN4QyxTQUFTLFlBQVk7QUFDckIsU0FBUyxrQkFBa0I7QUFDM0IsU0FBUyxvQkFBb0I7QUFDN0IsU0FBUyxnQkFBZ0I7QUFDekI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsY0FBYztBQUN2QixTQUFTLGlDQUFpQztBQUMxQztBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUtB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QixZQUFtQztBQUM1RSxRQUFNLGdCQUFnQixDQUFDLGdCQUFnQjtBQUNyQyxnQkFBWSxVQUFVO0FBQUEsRUFDeEIsQ0FBQztBQUVELFFBQU0sb0JBQW9CLFFBQVEsRUFBRSxxQkFBcUIsS0FBSyxDQUFDO0FBQy9ELFFBQU0sc0JBQXNCLFFBQVEsRUFBRSxxQkFBcUIsS0FBSyxDQUFDO0FBRWpFLFdBQVMsT0FBTyxpQkFBd0M7QUFDdEQsb0JBQWdCLFVBQVU7QUFDMUIsVUFBTSxpQkFBaUIsZ0JBQWdCLFdBQVcsRUFBRTtBQUNwRCxRQUFJLGdCQUFnQjtBQUNsQixxQkFBZSxVQUFVO0FBQUEsSUFDM0I7QUFBQSxFQUNGO0FBQ0Y7QUFTTyxTQUFTLFNBQVMsbUJBQWlDO0FBQ3hELE1BQUkscUJBQXFCLGlCQUFpQixNQUFNLHlCQUEyQjtBQUN6RSxVQUFNLElBQUksTUFBTSxnR0FBd0c7QUFBQSxFQUMxSDtBQUNGO0FBT0EsZUFBZSwyQkFBNEM7QUFDekQsUUFBTSxXQUFXLE1BQU0sTUFBTSwyRUFBMkU7QUFDeEcsUUFBTSx1QkFBdUIsTUFBTSxTQUFTLEtBQUs7QUFDakQsU0FBTyxxQkFBcUIsUUFBUSxnQkFBZ0IsSUFBSSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pIO0FBRUEsU0FBUyxPQUFPLFNBQTBCO0FBQ3hDLFNBQU8sUUFBUSxTQUFTLGlCQUFzQjtBQUNoRDtBQUVBLFNBQVMsYUFBYSxLQUFxQjtBQUN6QyxRQUFNLFFBQVEsSUFBSSxNQUFNLE9BQU8sRUFBRSxPQUFPLE9BQU87QUFDL0MsU0FBTyxNQUFNLEtBQUssR0FBRztBQUN2QjtBQUVBLGVBQWUsOEJBQThCLFlBQW1DO0FBQzlFLFFBQU0sdUJBQXVCLHdCQUF3Qix3QkFBd0IsZ0JBQWdCO0FBQzdGLE1BQUksT0FBTyxVQUFVLEdBQUc7QUFDdEIsVUFBTTtBQUFBLE1BQ0osd0JBQXdCLHdCQUF3QixZQUFZO0FBQUEsTUFDNUQ7QUFBQSxNQUNBLEVBQUUsT0FBTyxLQUFLO0FBQUEsSUFDaEI7QUFDQSxVQUFNLFNBQW1CLHdCQUF3QixrQkFBa0IsQ0FBQyxhQUFhO0FBQy9FLGVBQVMsVUFBVTtBQUFBLElBQ3JCLENBQUM7QUFBQSxFQUNILE9BQU87QUFDTCxVQUFNLHdCQUF3QixNQUFNLHlCQUF5QjtBQUU3RCxVQUFNLFNBQW1CLHdCQUF3QixjQUFjLENBQUMsYUFBYTtBQUMzRSxlQUFTLGdCQUFnQjtBQUN6QixlQUFTLFVBQVU7QUFBQSxJQUNyQixDQUFDO0FBRUQsVUFBTSxTQUFpQyx3QkFBd0IsY0FBYyxDQUFDLGFBQWE7QUFDekYsZUFBUyxVQUFVLElBQUk7QUFBQSxJQUN6QixDQUFDO0FBRUQsUUFBSSxXQUFXLG9CQUFvQixHQUFHO0FBQ3BDLFlBQU0sR0FBRyxvQkFBb0I7QUFBQSxJQUMvQjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLG9CQUFvQjtBQUM1QjsiLAogICJuYW1lcyI6IFsiVmVyc2lvblVwZGF0ZVR5cGUiXQp9Cg==
@@ -43,7 +43,7 @@ export interface RenderDelayedBacklinksOptions {
43
43
  *
44
44
  * @param dv - The DataviewInlineApi instance.
45
45
  * @param pathOrFiles - An optional array of PathOrAbstractFile.
46
- * @returns A Promise that resolves when the backlinks table has been rendered.
46
+ * @returns A {@link Promise} that resolves when the backlinks table has been rendered.
47
47
  */
48
48
  export declare function renderBacklinksTable(dv: DataviewInlineApi, pathOrFiles?: PathOrAbstractFile[]): Promise<void>;
49
49
  /**
@@ -82,4 +82,4 @@ export {
82
82
  renderDelayedBacklinks,
83
83
  renderDelayedBacklinksForFolder
84
84
  };
85
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0JhY2tsaW5rLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBCYWNrbGlua1xuICogUHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBiYWNrbGlua3MuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBURmlsZSxcbiAgVEZvbGRlclxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHtcbiAgRGF0YXZpZXdJbmxpbmVBcGksXG4gIExpbmtcbn0gZnJvbSAnLi9EYXRhdmlldy50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhdGhPckFic3RyYWN0RmlsZSxcbiAgUGF0aE9yRmlsZVxufSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyByZW5kZXJDYWxsb3V0IH0gZnJvbSAnLi9DYWxsb3V0LnRzJztcbmltcG9ydCB7IHJlbmRlclBhZ2luYXRlZFRhYmxlIH0gZnJvbSAnLi9EYXRhdmlldy50cyc7XG5pbXBvcnQgeyBmaXhUaXRsZSB9IGZyb20gJy4vRGF0YXZpZXdMaW5rLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgZ2V0TWFya2Rvd25GaWxlcyxcbiAgaXNGaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBnZW5lcmF0ZU1hcmtkb3duTGluayB9IGZyb20gJy4vTGluay50cyc7XG5pbXBvcnQgeyBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZSB9IGZyb20gJy4vTWV0YWRhdGFDYWNoZS50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgcmVuZGVyaW5nIGRlbGF5ZWQgYmFja2xpbmtzIGZvciBhIGZvbGRlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRGF0YXZpZXdJbmxpbmVBcGkgaW5zdGFuY2UuXG4gICAqL1xuICBkdjogRGF0YXZpZXdJbmxpbmVBcGk7XG5cbiAgLyoqXG4gICAqIFRoZSBmb2xkZXIgcGF0aC4gSWYgbm90IHByb3ZpZGVkLCB0aGUgY3VycmVudCBmaWxlJ3MgZm9sZGVyIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIGZvbGRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRpdGxlIGZvciB0aGUgcmVuZGVyZWQgYmFja2xpbmtzLiBEZWZhdWx0cyB0byBcIkZvbGRlciBCYWNrbGlua3NcIi5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHJlbmRlcmluZyBkZWxheWVkIGJhY2tsaW5rcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJEZWxheWVkQmFja2xpbmtzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRGF0YXZpZXdJbmxpbmVBcGkgaW5zdGFuY2UuXG4gICAqL1xuICBkdjogRGF0YXZpZXdJbmxpbmVBcGk7XG5cbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIFBhdGhPckZpbGUuXG4gICAqL1xuICBmaWxlczogUGF0aE9yRmlsZVtdO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgZm9yIHRoZSByZW5kZXJlZCBiYWNrbGlua3MuIERlZmF1bHRzIHRvIFwiQmFja2xpbmtzXCIuXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZW5kZXJzIGEgYmFja2xpbmtzIHRhYmxlIHVzaW5nIHRoZSBwcm92aWRlZCBEYXRhdmlld0lubGluZUFwaSBhbmQgb3B0aW9uYWwgYXJyYXkgb2YgUGF0aE9yQWJzdHJhY3RGaWxlLlxuICpcbiAqIEBwYXJhbSBkdiAtIFRoZSBEYXRhdmlld0lubGluZUFwaSBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlcyAtIEFuIG9wdGlvbmFsIGFycmF5IG9mIFBhdGhPckFic3RyYWN0RmlsZS5cbiAqIEByZXR1cm5zIEEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGJhY2tsaW5rcyB0YWJsZSBoYXMgYmVlbiByZW5kZXJlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmRlckJhY2tsaW5rc1RhYmxlKGR2OiBEYXRhdmlld0lubGluZUFwaSwgcGF0aE9yRmlsZXM/OiBQYXRoT3JBYnN0cmFjdEZpbGVbXSk6IFByb21pc2U8dm9pZD4ge1xuICBwYXRoT3JGaWxlcyA/Pz0gW107XG4gIGNvbnN0IGZpbGVzOiBURmlsZVtdID0gcGF0aE9yRmlsZXMuZmxhdE1hcCgoYWJzdHJhY3RGaWxlT3JQYXRoKSA9PiB7XG4gICAgY29uc3QgYWJzdHJhY3RGaWxlID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGR2LmFwcCwgYWJzdHJhY3RGaWxlT3JQYXRoKTtcbiAgICBpZiAoIWFic3RyYWN0RmlsZSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGlmIChpc0ZpbGUoYWJzdHJhY3RGaWxlKSkge1xuICAgICAgcmV0dXJuIFthYnN0cmFjdEZpbGVdO1xuICAgIH1cblxuICAgIHJldHVybiBnZXRNYXJrZG93bkZpbGVzKGR2LmFwcCwgYWJzdHJhY3RGaWxlIGFzIFRGb2xkZXIsIHRydWUpO1xuICB9KTtcblxuICBjb25zdCBiYWNrbGlua1Jvd3M6IFtMaW5rLCBzdHJpbmdbXV1bXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgIGNvbnN0IGxpbmsgPSBmaXhUaXRsZShkdiwgZmlsZS5wYXRoKTtcbiAgICBjb25zdCBiYWNrbGlua3MgPSBhd2FpdCBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZShkdi5hcHAsIGZpbGUpO1xuICAgIGNvbnN0IGJhY2tsaW5rTGlua3MgPSBiYWNrbGlua3Mua2V5cygpLm1hcCgoYmFja0xpbmtQYXRoKSA9PiB7XG4gICAgICBjb25zdCBtYXJrZG93bkxpbmsgPSBnZW5lcmF0ZU1hcmtkb3duTGluayh7XG4gICAgICAgIGFwcDogZHYuYXBwLFxuICAgICAgICBzb3VyY2VQYXRoT3JGaWxlOiBkdi5jdXJyZW50KCkuZmlsZS5wYXRoLFxuICAgICAgICB0YXJnZXRQYXRoT3JGaWxlOiBkdi5hcHAubWV0YWRhdGFDYWNoZS5nZXRGaXJzdExpbmtwYXRoRGVzdChiYWNrTGlua1BhdGgsIGZpbGUucGF0aCkgPz8gdGhyb3dFeHByZXNzaW9uKG5ldyBFcnJvcignTGluayBub3QgZm91bmQnKSlcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gYCR7bWFya2Rvd25MaW5rfSAoJHtiYWNrTGlua1BhdGh9KWA7XG4gICAgfSk7XG4gICAgaWYgKGJhY2tsaW5rTGlua3MubGVuZ3RoKSB7XG4gICAgICBiYWNrbGlua1Jvd3MucHVzaChbbGluaywgYmFja2xpbmtMaW5rc10pO1xuICAgIH1cbiAgfVxuXG4gIGF3YWl0IHJlbmRlclBhZ2luYXRlZFRhYmxlKHtcbiAgICBkdixcbiAgICBoZWFkZXJzOiBbJ05vdGUnLCAnQmFja2xpbmtzJ10sXG4gICAgcm93czogYmFja2xpbmtSb3dzXG4gIH0pO1xufVxuXG4vKipcbiAqIFJlbmRlcnMgZGVsYXllZCBiYWNrbGlua3MuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgcmVuZGVyaW5nIGRlbGF5ZWQgYmFja2xpbmtzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVuZGVyRGVsYXllZEJhY2tsaW5rcyhvcHRpb25zOiBSZW5kZXJEZWxheWVkQmFja2xpbmtzT3B0aW9ucyk6IHZvaWQge1xuICBjb25zdCB7XG4gICAgZHYsXG4gICAgZmlsZXMsXG4gICAgdGl0bGUgPSAnQmFja2xpbmtzJ1xuICB9ID0gb3B0aW9ucztcbiAgcmVuZGVyQ2FsbG91dCh7XG4gICAgYXN5bmMgY29udGVudFByb3ZpZGVyKCkge1xuICAgICAgYXdhaXQgcmVuZGVyQmFja2xpbmtzVGFibGUoZHYsIGZpbGVzKTtcbiAgICB9LFxuICAgIGR2LFxuICAgIGhlYWRlcjogdGl0bGVcbiAgfSk7XG59XG5cbi8qKlxuICogUmVuZGVycyBkZWxheWVkIGJhY2tsaW5rcyBmb3IgYSBzcGVjaWZpYyBmb2xkZXIuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgcmVuZGVyaW5nIGRlbGF5ZWQgYmFja2xpbmtzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVuZGVyRGVsYXllZEJhY2tsaW5rc0ZvckZvbGRlcihvcHRpb25zOiBSZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyT3B0aW9ucyk6IHZvaWQge1xuICBjb25zdCB7XG4gICAgZHYsXG4gICAgZm9sZGVyLFxuICAgIHRpdGxlID0gJ0ZvbGRlciBCYWNrbGlua3MnXG4gIH0gPSBvcHRpb25zO1xuICBjb25zdCBmb2xkZXIyID0gZm9sZGVyID8/IGR2LmN1cnJlbnQoKS5maWxlLmZvbGRlcjtcbiAgcmVuZGVyRGVsYXllZEJhY2tsaW5rcyh7XG4gICAgZHYsXG4gICAgZmlsZXM6IGdldE1hcmtkb3duRmlsZXMoZHYuYXBwLCBmb2xkZXIyLCB0cnVlKSxcbiAgICB0aXRsZVxuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFtQkEsU0FBUyx1QkFBdUI7QUFDaEMsU0FBUyxxQkFBcUI7QUFDOUIsU0FBUyw0QkFBNEI7QUFDckMsU0FBUyxnQkFBZ0I7QUFDekI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyw0QkFBNEI7QUFDckMsU0FBUywrQkFBK0I7QUFpRHhDLGVBQXNCLHFCQUFxQixJQUF1QixhQUFtRDtBQUNuSCxrQkFBZ0IsQ0FBQztBQUNqQixRQUFNLFFBQWlCLFlBQVksUUFBUSxDQUFDLHVCQUF1QjtBQUNqRSxVQUFNLGVBQWUsc0JBQXNCLEdBQUcsS0FBSyxrQkFBa0I7QUFDckUsUUFBSSxDQUFDLGNBQWM7QUFDakIsYUFBTyxDQUFDO0FBQUEsSUFDVjtBQUVBLFFBQUksT0FBTyxZQUFZLEdBQUc7QUFDeEIsYUFBTyxDQUFDLFlBQVk7QUFBQSxJQUN0QjtBQUVBLFdBQU8saUJBQWlCLEdBQUcsS0FBSyxjQUF5QixJQUFJO0FBQUEsRUFDL0QsQ0FBQztBQUVELFFBQU0sZUFBbUMsQ0FBQztBQUUxQyxhQUFXLFFBQVEsT0FBTztBQUN4QixVQUFNLE9BQU8sU0FBUyxJQUFJLEtBQUssSUFBSTtBQUNuQyxVQUFNLFlBQVksTUFBTSx3QkFBd0IsR0FBRyxLQUFLLElBQUk7QUFDNUQsVUFBTSxnQkFBZ0IsVUFBVSxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtBQUMzRCxZQUFNLGVBQWUscUJBQXFCO0FBQUEsUUFDeEMsS0FBSyxHQUFHO0FBQUEsUUFDUixrQkFBa0IsR0FBRyxRQUFRLEVBQUUsS0FBSztBQUFBLFFBQ3BDLGtCQUFrQixHQUFHLElBQUksY0FBYyxxQkFBcUIsY0FBYyxLQUFLLElBQUksS0FBSyxnQkFBZ0IsSUFBSSxNQUFNLGdCQUFnQixDQUFDO0FBQUEsTUFDckksQ0FBQztBQUVELGFBQU8sR0FBRyxZQUFZLEtBQUssWUFBWTtBQUFBLElBQ3pDLENBQUM7QUFDRCxRQUFJLGNBQWMsUUFBUTtBQUN4QixtQkFBYSxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUM7QUFBQSxJQUN6QztBQUFBLEVBQ0Y7QUFFQSxRQUFNLHFCQUFxQjtBQUFBLElBQ3pCO0FBQUEsSUFDQSxTQUFTLENBQUMsUUFBUSxXQUFXO0FBQUEsSUFDN0IsTUFBTTtBQUFBLEVBQ1IsQ0FBQztBQUNIO0FBT08sU0FBUyx1QkFBdUIsU0FBOEM7QUFDbkYsUUFBTTtBQUFBLElBQ0o7QUFBQSxJQUNBO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVixJQUFJO0FBQ0osZ0JBQWM7QUFBQSxJQUNaLE1BQU0sa0JBQWtCO0FBQ3RCLFlBQU0scUJBQXFCLElBQUksS0FBSztBQUFBLElBQ3RDO0FBQUEsSUFDQTtBQUFBLElBQ0EsUUFBUTtBQUFBLEVBQ1YsQ0FBQztBQUNIO0FBT08sU0FBUyxnQ0FBZ0MsU0FBdUQ7QUFDckcsUUFBTTtBQUFBLElBQ0o7QUFBQSxJQUNBO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVixJQUFJO0FBQ0osUUFBTSxVQUFVLFVBQVUsR0FBRyxRQUFRLEVBQUUsS0FBSztBQUM1Qyx5QkFBdUI7QUFBQSxJQUNyQjtBQUFBLElBQ0EsT0FBTyxpQkFBaUIsR0FBRyxLQUFLLFNBQVMsSUFBSTtBQUFBLElBQzdDO0FBQUEsRUFDRixDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
85
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0JhY2tsaW5rLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBCYWNrbGlua1xuICogUHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBiYWNrbGlua3MuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBURmlsZSxcbiAgVEZvbGRlclxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHtcbiAgRGF0YXZpZXdJbmxpbmVBcGksXG4gIExpbmtcbn0gZnJvbSAnLi9EYXRhdmlldy50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhdGhPckFic3RyYWN0RmlsZSxcbiAgUGF0aE9yRmlsZVxufSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuXG5pbXBvcnQgeyB0aHJvd0V4cHJlc3Npb24gfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyByZW5kZXJDYWxsb3V0IH0gZnJvbSAnLi9DYWxsb3V0LnRzJztcbmltcG9ydCB7IHJlbmRlclBhZ2luYXRlZFRhYmxlIH0gZnJvbSAnLi9EYXRhdmlldy50cyc7XG5pbXBvcnQgeyBmaXhUaXRsZSB9IGZyb20gJy4vRGF0YXZpZXdMaW5rLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgZ2V0TWFya2Rvd25GaWxlcyxcbiAgaXNGaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBnZW5lcmF0ZU1hcmtkb3duTGluayB9IGZyb20gJy4vTGluay50cyc7XG5pbXBvcnQgeyBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZSB9IGZyb20gJy4vTWV0YWRhdGFDYWNoZS50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgcmVuZGVyaW5nIGRlbGF5ZWQgYmFja2xpbmtzIGZvciBhIGZvbGRlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRGF0YXZpZXdJbmxpbmVBcGkgaW5zdGFuY2UuXG4gICAqL1xuICBkdjogRGF0YXZpZXdJbmxpbmVBcGk7XG5cbiAgLyoqXG4gICAqIFRoZSBmb2xkZXIgcGF0aC4gSWYgbm90IHByb3ZpZGVkLCB0aGUgY3VycmVudCBmaWxlJ3MgZm9sZGVyIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIGZvbGRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRpdGxlIGZvciB0aGUgcmVuZGVyZWQgYmFja2xpbmtzLiBEZWZhdWx0cyB0byBcIkZvbGRlciBCYWNrbGlua3NcIi5cbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHJlbmRlcmluZyBkZWxheWVkIGJhY2tsaW5rcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJEZWxheWVkQmFja2xpbmtzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRGF0YXZpZXdJbmxpbmVBcGkgaW5zdGFuY2UuXG4gICAqL1xuICBkdjogRGF0YXZpZXdJbmxpbmVBcGk7XG5cbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIFBhdGhPckZpbGUuXG4gICAqL1xuICBmaWxlczogUGF0aE9yRmlsZVtdO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgZm9yIHRoZSByZW5kZXJlZCBiYWNrbGlua3MuIERlZmF1bHRzIHRvIFwiQmFja2xpbmtzXCIuXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZW5kZXJzIGEgYmFja2xpbmtzIHRhYmxlIHVzaW5nIHRoZSBwcm92aWRlZCBEYXRhdmlld0lubGluZUFwaSBhbmQgb3B0aW9uYWwgYXJyYXkgb2YgUGF0aE9yQWJzdHJhY3RGaWxlLlxuICpcbiAqIEBwYXJhbSBkdiAtIFRoZSBEYXRhdmlld0lubGluZUFwaSBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlcyAtIEFuIG9wdGlvbmFsIGFycmF5IG9mIFBhdGhPckFic3RyYWN0RmlsZS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgYmFja2xpbmtzIHRhYmxlIGhhcyBiZWVuIHJlbmRlcmVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVuZGVyQmFja2xpbmtzVGFibGUoZHY6IERhdGF2aWV3SW5saW5lQXBpLCBwYXRoT3JGaWxlcz86IFBhdGhPckFic3RyYWN0RmlsZVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gIHBhdGhPckZpbGVzID8/PSBbXTtcbiAgY29uc3QgZmlsZXM6IFRGaWxlW10gPSBwYXRoT3JGaWxlcy5mbGF0TWFwKChhYnN0cmFjdEZpbGVPclBhdGgpID0+IHtcbiAgICBjb25zdCBhYnN0cmFjdEZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoZHYuYXBwLCBhYnN0cmFjdEZpbGVPclBhdGgpO1xuICAgIGlmICghYWJzdHJhY3RGaWxlKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKGlzRmlsZShhYnN0cmFjdEZpbGUpKSB7XG4gICAgICByZXR1cm4gW2Fic3RyYWN0RmlsZV07XG4gICAgfVxuXG4gICAgcmV0dXJuIGdldE1hcmtkb3duRmlsZXMoZHYuYXBwLCBhYnN0cmFjdEZpbGUgYXMgVEZvbGRlciwgdHJ1ZSk7XG4gIH0pO1xuXG4gIGNvbnN0IGJhY2tsaW5rUm93czogW0xpbmssIHN0cmluZ1tdXVtdID0gW107XG5cbiAgZm9yIChjb25zdCBmaWxlIG9mIGZpbGVzKSB7XG4gICAgY29uc3QgbGluayA9IGZpeFRpdGxlKGR2LCBmaWxlLnBhdGgpO1xuICAgIGNvbnN0IGJhY2tsaW5rcyA9IGF3YWl0IGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlKGR2LmFwcCwgZmlsZSk7XG4gICAgY29uc3QgYmFja2xpbmtMaW5rcyA9IGJhY2tsaW5rcy5rZXlzKCkubWFwKChiYWNrTGlua1BhdGgpID0+IHtcbiAgICAgIGNvbnN0IG1hcmtkb3duTGluayA9IGdlbmVyYXRlTWFya2Rvd25MaW5rKHtcbiAgICAgICAgYXBwOiBkdi5hcHAsXG4gICAgICAgIHNvdXJjZVBhdGhPckZpbGU6IGR2LmN1cnJlbnQoKS5maWxlLnBhdGgsXG4gICAgICAgIHRhcmdldFBhdGhPckZpbGU6IGR2LmFwcC5tZXRhZGF0YUNhY2hlLmdldEZpcnN0TGlua3BhdGhEZXN0KGJhY2tMaW5rUGF0aCwgZmlsZS5wYXRoKSA/PyB0aHJvd0V4cHJlc3Npb24obmV3IEVycm9yKCdMaW5rIG5vdCBmb3VuZCcpKVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBgJHttYXJrZG93bkxpbmt9ICgke2JhY2tMaW5rUGF0aH0pYDtcbiAgICB9KTtcbiAgICBpZiAoYmFja2xpbmtMaW5rcy5sZW5ndGgpIHtcbiAgICAgIGJhY2tsaW5rUm93cy5wdXNoKFtsaW5rLCBiYWNrbGlua0xpbmtzXSk7XG4gICAgfVxuICB9XG5cbiAgYXdhaXQgcmVuZGVyUGFnaW5hdGVkVGFibGUoe1xuICAgIGR2LFxuICAgIGhlYWRlcnM6IFsnTm90ZScsICdCYWNrbGlua3MnXSxcbiAgICByb3dzOiBiYWNrbGlua1Jvd3NcbiAgfSk7XG59XG5cbi8qKlxuICogUmVuZGVycyBkZWxheWVkIGJhY2tsaW5rcy5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciByZW5kZXJpbmcgZGVsYXllZCBiYWNrbGlua3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJEZWxheWVkQmFja2xpbmtzKG9wdGlvbnM6IFJlbmRlckRlbGF5ZWRCYWNrbGlua3NPcHRpb25zKTogdm9pZCB7XG4gIGNvbnN0IHtcbiAgICBkdixcbiAgICBmaWxlcyxcbiAgICB0aXRsZSA9ICdCYWNrbGlua3MnXG4gIH0gPSBvcHRpb25zO1xuICByZW5kZXJDYWxsb3V0KHtcbiAgICBhc3luYyBjb250ZW50UHJvdmlkZXIoKSB7XG4gICAgICBhd2FpdCByZW5kZXJCYWNrbGlua3NUYWJsZShkdiwgZmlsZXMpO1xuICAgIH0sXG4gICAgZHYsXG4gICAgaGVhZGVyOiB0aXRsZVxuICB9KTtcbn1cblxuLyoqXG4gKiBSZW5kZXJzIGRlbGF5ZWQgYmFja2xpbmtzIGZvciBhIHNwZWNpZmljIGZvbGRlci5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciByZW5kZXJpbmcgZGVsYXllZCBiYWNrbGlua3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJEZWxheWVkQmFja2xpbmtzRm9yRm9sZGVyKG9wdGlvbnM6IFJlbmRlckRlbGF5ZWRCYWNrbGlua3NGb3JGb2xkZXJPcHRpb25zKTogdm9pZCB7XG4gIGNvbnN0IHtcbiAgICBkdixcbiAgICBmb2xkZXIsXG4gICAgdGl0bGUgPSAnRm9sZGVyIEJhY2tsaW5rcydcbiAgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IGZvbGRlcjIgPSBmb2xkZXIgPz8gZHYuY3VycmVudCgpLmZpbGUuZm9sZGVyO1xuICByZW5kZXJEZWxheWVkQmFja2xpbmtzKHtcbiAgICBkdixcbiAgICBmaWxlczogZ2V0TWFya2Rvd25GaWxlcyhkdi5hcHAsIGZvbGRlcjIsIHRydWUpLFxuICAgIHRpdGxlXG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQW1CQSxTQUFTLHVCQUF1QjtBQUNoQyxTQUFTLHFCQUFxQjtBQUM5QixTQUFTLDRCQUE0QjtBQUNyQyxTQUFTLGdCQUFnQjtBQUN6QjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLDRCQUE0QjtBQUNyQyxTQUFTLCtCQUErQjtBQWlEeEMsZUFBc0IscUJBQXFCLElBQXVCLGFBQW1EO0FBQ25ILGtCQUFnQixDQUFDO0FBQ2pCLFFBQU0sUUFBaUIsWUFBWSxRQUFRLENBQUMsdUJBQXVCO0FBQ2pFLFVBQU0sZUFBZSxzQkFBc0IsR0FBRyxLQUFLLGtCQUFrQjtBQUNyRSxRQUFJLENBQUMsY0FBYztBQUNqQixhQUFPLENBQUM7QUFBQSxJQUNWO0FBRUEsUUFBSSxPQUFPLFlBQVksR0FBRztBQUN4QixhQUFPLENBQUMsWUFBWTtBQUFBLElBQ3RCO0FBRUEsV0FBTyxpQkFBaUIsR0FBRyxLQUFLLGNBQXlCLElBQUk7QUFBQSxFQUMvRCxDQUFDO0FBRUQsUUFBTSxlQUFtQyxDQUFDO0FBRTFDLGFBQVcsUUFBUSxPQUFPO0FBQ3hCLFVBQU0sT0FBTyxTQUFTLElBQUksS0FBSyxJQUFJO0FBQ25DLFVBQU0sWUFBWSxNQUFNLHdCQUF3QixHQUFHLEtBQUssSUFBSTtBQUM1RCxVQUFNLGdCQUFnQixVQUFVLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCO0FBQzNELFlBQU0sZUFBZSxxQkFBcUI7QUFBQSxRQUN4QyxLQUFLLEdBQUc7QUFBQSxRQUNSLGtCQUFrQixHQUFHLFFBQVEsRUFBRSxLQUFLO0FBQUEsUUFDcEMsa0JBQWtCLEdBQUcsSUFBSSxjQUFjLHFCQUFxQixjQUFjLEtBQUssSUFBSSxLQUFLLGdCQUFnQixJQUFJLE1BQU0sZ0JBQWdCLENBQUM7QUFBQSxNQUNySSxDQUFDO0FBRUQsYUFBTyxHQUFHLFlBQVksS0FBSyxZQUFZO0FBQUEsSUFDekMsQ0FBQztBQUNELFFBQUksY0FBYyxRQUFRO0FBQ3hCLG1CQUFhLEtBQUssQ0FBQyxNQUFNLGFBQWEsQ0FBQztBQUFBLElBQ3pDO0FBQUEsRUFDRjtBQUVBLFFBQU0scUJBQXFCO0FBQUEsSUFDekI7QUFBQSxJQUNBLFNBQVMsQ0FBQyxRQUFRLFdBQVc7QUFBQSxJQUM3QixNQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0g7QUFPTyxTQUFTLHVCQUF1QixTQUE4QztBQUNuRixRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBLFFBQVE7QUFBQSxFQUNWLElBQUk7QUFDSixnQkFBYztBQUFBLElBQ1osTUFBTSxrQkFBa0I7QUFDdEIsWUFBTSxxQkFBcUIsSUFBSSxLQUFLO0FBQUEsSUFDdEM7QUFBQSxJQUNBO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVixDQUFDO0FBQ0g7QUFPTyxTQUFTLGdDQUFnQyxTQUF1RDtBQUNyRyxRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBLFFBQVE7QUFBQSxFQUNWLElBQUk7QUFDSixRQUFNLFVBQVUsVUFBVSxHQUFHLFFBQVEsRUFBRSxLQUFLO0FBQzVDLHlCQUF1QjtBQUFBLElBQ3JCO0FBQUEsSUFDQSxPQUFPLGlCQUFpQixHQUFHLEtBQUssU0FBUyxJQUFJO0FBQUEsSUFDN0M7QUFBQSxFQUNGLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -28,11 +28,11 @@ export type CombinedPage<CustomFrontmatter = unknown> = CombinedFrontmatter<Cust
28
28
  */
29
29
  export interface DataviewInlineApi extends DataviewInlineApiOriginal {
30
30
  /**
31
- * Wraps an array of items into a `DataArray` object.
31
+ * Wraps an array of items into a {@link DataArray} object.
32
32
  *
33
33
  * @typeParam T - The type of the items in the array.
34
34
  * @param arr - The array of items to wrap.
35
- * @returns A `DataArray` containing the items.
35
+ * @returns A {@link DataArray} containing the items.
36
36
  */
37
37
  array<T>(arr: T[]): DataArray<T>;
38
38
  /**
@@ -47,7 +47,7 @@ export interface DataviewInlineApi extends DataviewInlineApiOriginal {
47
47
  *
48
48
  * @typeParam CustomPage - The type of the custom page. Defaults to `SMarkdownPage`.
49
49
  * @param query - An optional string query to filter the pages.
50
- * @returns A `DataArray` of pages matching the query.
50
+ * @returns A {@link DataArray} of pages matching the query.
51
51
  */
52
52
  pages<CustomFrontmatter = unknown>(query?: string): DataArray<CombinedPage<CustomFrontmatter>>;
53
53
  /**