obsidian-dev-utils 4.15.0 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/lib/@types.cjs +4 -2
  3. package/dist/lib/Async.cjs +4 -2
  4. package/dist/lib/Blob.cjs +4 -2
  5. package/dist/lib/DocumentFragment.cjs +4 -2
  6. package/dist/lib/Error.cjs +4 -2
  7. package/dist/lib/Function.cjs +4 -2
  8. package/dist/lib/HTMLElement.cjs +4 -2
  9. package/dist/lib/Object.cjs +4 -2
  10. package/dist/lib/Path.cjs +5 -3
  11. package/dist/lib/RegExp.cjs +4 -2
  12. package/dist/lib/String.cjs +4 -2
  13. package/dist/lib/ValueProvider.cjs +4 -2
  14. package/dist/lib/index.cjs +19 -17
  15. package/dist/lib/obsidian/App.cjs +4 -2
  16. package/dist/lib/obsidian/AttachmentPath.cjs +4 -2
  17. package/dist/lib/obsidian/Backlink.cjs +4 -2
  18. package/dist/lib/obsidian/Callout.cjs +4 -2
  19. package/dist/lib/obsidian/Dataview.cjs +4 -2
  20. package/dist/lib/obsidian/DataviewLink.cjs +4 -2
  21. package/dist/lib/obsidian/FileChange.cjs +4 -2
  22. package/dist/lib/obsidian/FileManager.cjs +4 -2
  23. package/dist/lib/obsidian/FileSystem.cjs +4 -2
  24. package/dist/lib/obsidian/FrontMatter.cjs +4 -2
  25. package/dist/lib/obsidian/Link.cjs +103 -6
  26. package/dist/lib/obsidian/Link.d.ts +36 -0
  27. package/dist/lib/obsidian/Logger.cjs +4 -2
  28. package/dist/lib/obsidian/Markdown.cjs +4 -2
  29. package/dist/lib/obsidian/MarkdownCodeBlockProcessor.cjs +4 -2
  30. package/dist/lib/obsidian/MarkdownView.cjs +4 -2
  31. package/dist/lib/obsidian/MetadataCache.cjs +4 -2
  32. package/dist/lib/obsidian/Modal/Alert.cjs +4 -2
  33. package/dist/lib/obsidian/Modal/Confirm.cjs +4 -2
  34. package/dist/lib/obsidian/Modal/Prompt.cjs +4 -2
  35. package/dist/lib/obsidian/Modal/SelectItem.cjs +4 -2
  36. package/dist/lib/obsidian/Modal/index.cjs +8 -6
  37. package/dist/lib/obsidian/ObsidianSettings.cjs +4 -2
  38. package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +4 -2
  39. package/dist/lib/obsidian/Plugin/Plugin.cjs +4 -2
  40. package/dist/lib/obsidian/Plugin/PluginBase.cjs +4 -2
  41. package/dist/lib/obsidian/Plugin/PluginSettings.cjs +4 -2
  42. package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.cjs +4 -2
  43. package/dist/lib/obsidian/Plugin/ValueComponent.cjs +4 -2
  44. package/dist/lib/obsidian/Plugin/index.cjs +10 -8
  45. package/dist/lib/obsidian/Queue.cjs +4 -2
  46. package/dist/lib/obsidian/Reference.cjs +4 -2
  47. package/dist/lib/obsidian/RenameDeleteHandler.cjs +4 -2
  48. package/dist/lib/obsidian/ResourceUrl.cjs +4 -2
  49. package/dist/lib/obsidian/Vault.cjs +4 -2
  50. package/dist/lib/obsidian/index.cjs +28 -26
  51. package/dist/lib/scripts/CliUtils.cjs +4 -2
  52. package/dist/lib/scripts/CodeGenerator.cjs +4 -2
  53. package/dist/lib/scripts/ESLint/ESLint.cjs +4 -2
  54. package/dist/lib/scripts/ESLint/eslint.config.cjs +10 -8
  55. package/dist/lib/scripts/ESLint/index.cjs +6 -4
  56. package/dist/lib/scripts/Exec.cjs +4 -2
  57. package/dist/lib/scripts/Fs.cjs +4 -2
  58. package/dist/lib/scripts/JSON.cjs +4 -2
  59. package/dist/lib/scripts/NodeModules.cjs +5 -3
  60. package/dist/lib/scripts/Npm.cjs +4 -2
  61. package/dist/lib/scripts/ObsidianDevUtilsRepoPaths.cjs +4 -2
  62. package/dist/lib/scripts/Root.cjs +4 -2
  63. package/dist/lib/scripts/build.cjs +4 -2
  64. package/dist/lib/scripts/cli.cjs +4 -2
  65. package/dist/lib/scripts/esbuild/Dependency.cjs +4 -2
  66. package/dist/lib/scripts/esbuild/ObsidianPluginBuilder.cjs +6 -2
  67. package/dist/lib/scripts/esbuild/copyToObsidianPluginsFolderPlugin.cjs +4 -2
  68. package/dist/lib/scripts/esbuild/fixEsmPlugin.cjs +50 -0
  69. package/dist/lib/scripts/esbuild/fixEsmPlugin.d.ts +11 -0
  70. package/dist/lib/scripts/esbuild/fixSourceMapsPlugin.cjs +4 -2
  71. package/dist/lib/scripts/esbuild/index.cjs +13 -8
  72. package/dist/lib/scripts/esbuild/index.d.ts +1 -0
  73. package/dist/lib/scripts/esbuild/preprocessPlugin.cjs +11 -3
  74. package/dist/lib/scripts/esbuild/renameToCjsPlugin.cjs +4 -2
  75. package/dist/lib/scripts/index.cjs +19 -17
  76. package/dist/lib/scripts/spellcheck.cjs +4 -2
  77. package/dist/lib/scripts/version.cjs +5 -3
  78. package/dist/lib/url.cjs +9 -4
  79. package/dist/lib/url.d.ts +2 -2
  80. package/package.json +6 -2
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -115,4 +117,4 @@ function getValidatorElement(valueComponent) {
115
117
  0 && (module.exports = {
116
118
  extend
117
119
  });
118
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL1BsdWdpbi9WYWx1ZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gVmFsdWVDb21wb25lbnRcbiAqIENvbnRhaW5zIHV0aWxpdHkgdHlwZXMgYW5kIGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgdmFsdWUgY29tcG9uZW50cywgd2hpY2ggYXJlIFVJIGNvbXBvbmVudHMgdGhhdCBkaXNwbGF5IGFuZCBlZGl0IHZhbHVlcy5cbiAqL1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgU2xpZGVyQ29tcG9uZW50LFxuICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgVGV4dENvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IEtleXNNYXRjaGluZyB9IGZyb20gJy4uLy4uL0B0eXBlcy50cyc7XG5pbXBvcnQgdHlwZSB7IE1heWJlUHJvbWlzZSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL0hUTUxFbGVtZW50LnRzJztcbmltcG9ydCB0eXBlIHsgUGx1Z2luQmFzZSB9IGZyb20gJy4vUGx1Z2luQmFzZS50cyc7XG5cbmltcG9ydCB7IGFzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyB9IGZyb20gJy4uLy4uL09iamVjdC50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYmluZGluZyBhIHZhbHVlIGNvbXBvbmVudCB0byBhIHBsdWdpbiBzZXR0aW5nLlxuICovXG5pbnRlcmZhY2UgQmluZFZhbHVlQ29tcG9uZW50T3B0aW9uczxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZT4ge1xuICAvKipcbiAgICogSWYgdHJ1ZSwgc2F2ZXMgdGhlIHBsdWdpbiBzZXR0aW5ncyBhdXRvbWF0aWNhbGx5IGFmdGVyIHRoZSBjb21wb25lbnQgdmFsdWUgY2hhbmdlcy4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBhdXRvU2F2ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEEgY2FsbGJhY2sgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudCBjaGFuZ2VzLlxuICAgKi9cbiAgb25DaGFuZ2VkPzogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luIHNldHRpbmdzIG9iamVjdCB0byBiaW5kIHRoZSBjb21wb25lbnQgdG8uIERlZmF1bHQgaXMgdGhlIHBsdWdpbidzIGN1cnJlbnQgc2V0dGluZ3MuXG4gICAqL1xuICBwbHVnaW5TZXR0aW5ncz86IFBsdWdpblNldHRpbmdzO1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIFVJIHZhbHVlIGJlZm9yZSBzZXR0aW5nIGl0IG9uIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqIEBwYXJhbSB1aVZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBVSSBjb21wb25lbnQuXG4gICAqIEByZXR1cm5zIEFuIGVycm9yIG1lc3NhZ2UgaWYgdGhlIHZhbHVlIGlzIGludmFsaWQsIG9yIGBudWxsYCBpZiBpdCBpcyB2YWxpZC5cbiAgICovXG4gIHZhbHVlVmFsaWRhdG9yPzogKHVpVmFsdWU6IFVJVmFsdWUpID0+IG51bGwgfCBzdHJpbmc7XG59XG5cbi8qKlxuICogRXh0ZW5kZWQgb3B0aW9ucyBmb3IgYmluZGluZyBhIHZhbHVlIGNvbXBvbmVudCB0byBhIHBsdWdpbiBzZXR0aW5nLlxuICovXG5pbnRlcmZhY2UgQmluZFZhbHVlQ29tcG9uZW50T3B0aW9uc0V4dGVuZGVkPFBsdWdpblNldHRpbmdzLCBVSVZhbHVlLCBQcm9wZXJ0eSBleHRlbmRzIGtleW9mIFBsdWdpblNldHRpbmdzPiBleHRlbmRzIEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnM8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+IHtcbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBVSSBjb21wb25lbnQncyB2YWx1ZSBiYWNrIHRvIHRoZSBwbHVnaW4gc2V0dGluZ3MgdmFsdWUuXG4gICAqIEBwYXJhbSB1aVZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBVSSBjb21wb25lbnQuXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSB0byBzZXQgb24gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICovXG4gIGNvbXBvbmVudFRvUGx1Z2luU2V0dGluZ3NWYWx1ZUNvbnZlcnRlcjogKHVpVmFsdWU6IFVJVmFsdWUpID0+IFBsdWdpblNldHRpbmdzW1Byb3BlcnR5XTtcblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHBsdWdpbiBzZXR0aW5ncyB2YWx1ZSB0byB0aGUgdmFsdWUgdXNlZCBieSB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gcGx1Z2luU2V0dGluZ3NWYWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICogQHJldHVybnMgVGhlIHZhbHVlIHRvIHNldCBvbiB0aGUgVUkgY29tcG9uZW50LlxuICAgKi9cbiAgcGx1Z2luU2V0dGluZ3NUb0NvbXBvbmVudFZhbHVlQ29udmVydGVyOiAocGx1Z2luU2V0dGluZ3NWYWx1ZTogUGx1Z2luU2V0dGluZ3NbUHJvcGVydHldKSA9PiBVSVZhbHVlO1xufVxuXG4vKipcbiAqIFZhbHVlQ29tcG9uZW50IHRoYXQgY2FuIGJlIHVzZWQgYXMgYW4gb3JpZ2luYWwgVmFsdWVDb21wb25lbnQgd2l0aCBleHRlbmRlZCBmdW5jdGlvbmFsaXR5LlxuICovXG50eXBlIFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+PiA9IFRWYWx1ZUNvbXBvbmVudCAmIFZhbHVlQ29tcG9uZW50RXg8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PjtcblxuLyoqXG4gKiBBIFZhbHVlQ29tcG9uZW50IHRoYXQgY2FuIHRyYWNrIGNoYW5nZXMuXG4gKi9cbmludGVyZmFjZSBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PFQ+IHtcbiAgLyoqXG4gICAqIFNldHMgYSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudCBjaGFuZ2VzLlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBBIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQgY2hhbmdlcy5cbiAgICovXG4gIG9uQ2hhbmdlKGNhbGxiYWNrOiAobmV3VmFsdWU6IFQpID0+IFByb21pc2U8dm9pZD4pOiB0aGlzO1xufVxuXG4vKipcbiAqIFZhbHVlQ29tcG9uZW50IHdpdGggZXh0ZW5kZWQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuY2xhc3MgVmFsdWVDb21wb25lbnRFeDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxVSVZhbHVlPj4ge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSB2YWx1ZUNvbXBvbmVudDogVFZhbHVlQ29tcG9uZW50KSB7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgVmFsdWVDb21wb25lbnQgd2l0aCBleHRlbmRlZCBmdW5jdGlvbmFsaXR5LlxuICAgKi9cbiAgcHVibGljIGFzRXh0ZW5kZWQoKTogVmFsdWVDb21wb25lbnRFeFR5cGU8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIGFzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh7fSwgdGhpcy52YWx1ZUNvbXBvbmVudCwgdGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogQmluZHMgdGhlIFZhbHVlQ29tcG9uZW50IHRvIGEgcHJvcGVydHkgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICpcbiAgICogQHR5cGVQYXJhbSBQbHVnaW5TZXR0aW5ncyAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gc2V0dGluZ3Mgb2JqZWN0LlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbi5cbiAgICogQHBhcmFtIHByb3BlcnR5IC0gVGhlIHByb3BlcnR5IGtleSBpbiBgUGx1Z2luU2V0dGluZ3NgIHRvIGJpbmQgdG8gdGhlIFVJIGNvbXBvbmVudC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gICAqIEByZXR1cm5zIFRoZSBgVmFsdWVDb21wb25lbnRgIGluc3RhbmNlIHRoYXQgd2FzIGJvdW5kIHRvIHRoZSBwcm9wZXJ0eS5cbiAgICovXG4gIHB1YmxpYyBiaW5kPFxuICAgIFBsdWdpblNldHRpbmdzIGV4dGVuZHMgb2JqZWN0LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1wYXJhbWV0ZXJzXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBLZXlzTWF0Y2hpbmc8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+XG4gID4oXG4gICAgcGx1Z2luOiBQbHVnaW5CYXNlPFBsdWdpblNldHRpbmdzPixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgb3B0aW9ucz86IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnM8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+XG4gICk6IFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudD47XG5cbiAgLyoqXG4gICAqIEJpbmRzIHRoZSBWYWx1ZUNvbXBvbmVudCB0byBhIHByb3BlcnR5IGluIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqXG4gICAqIEB0eXBlUGFyYW0gUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IGV4dGVuZHMgYFBsdWdpbkJhc2VgLlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAdHlwZVBhcmFtIFBsdWdpblNldHRpbmdzIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiBzZXR0aW5ncyBvYmplY3QuXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luLlxuICAgKiBAcGFyYW0gcHJvcGVydHkgLSBUaGUgcHJvcGVydHkga2V5IGluIGBQbHVnaW5TZXR0aW5nc2AgdG8gYmluZCB0byB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGBWYWx1ZUNvbXBvbmVudGAgaW5zdGFuY2UgdGhhdCB3YXMgYm91bmQgdG8gdGhlIHByb3BlcnR5LlxuICAgKi9cbiAgcHVibGljIGJpbmQ8XG4gICAgUGx1Z2luU2V0dGluZ3MgZXh0ZW5kcyBvYmplY3QsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBQbHVnaW5TZXR0aW5nc1xuICA+KFxuICAgIHBsdWdpbjogUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz4sXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIG9wdGlvbnM6IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnNFeHRlbmRlZDxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZSwgUHJvcGVydHk+XG4gICk6IFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudD47XG5cbiAgLyoqXG4gICAqIEJpbmRzIHRoZSBWYWx1ZUNvbXBvbmVudCB0byBhIHByb3BlcnR5IGluIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqXG4gICAqIEB0eXBlUGFyYW0gUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IGV4dGVuZHMgYFBsdWdpbkJhc2VgLlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAdHlwZVBhcmFtIFBsdWdpblNldHRpbmdzIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiBzZXR0aW5ncyBvYmplY3QuXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luLlxuICAgKiBAcGFyYW0gcHJvcGVydHkgLSBUaGUgcHJvcGVydHkga2V5IGluIGBQbHVnaW5TZXR0aW5nc2AgdG8gYmluZCB0byB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGBWYWx1ZUNvbXBvbmVudGAgaW5zdGFuY2UgdGhhdCB3YXMgYm91bmQgdG8gdGhlIHByb3BlcnR5LlxuICAgKi9cbiAgcHVibGljIGJpbmQ8XG4gICAgUGx1Z2luU2V0dGluZ3MgZXh0ZW5kcyBvYmplY3QsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBQbHVnaW5TZXR0aW5nc1xuICA+KFxuICAgIHBsdWdpbjogUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz4sXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIG9wdGlvbnM/OiBCaW5kVmFsdWVDb21wb25lbnRPcHRpb25zPFBsdWdpblNldHRpbmdzLCBVSVZhbHVlPlxuICApOiBWYWx1ZUNvbXBvbmVudEV4VHlwZTxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQ+IHtcbiAgICB0eXBlIFByb3BlcnR5VHlwZSA9IFBsdWdpblNldHRpbmdzW1Byb3BlcnR5XTtcbiAgICBjb25zdCBERUZBVUxUX09QVElPTlM6IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnNFeHRlbmRlZDxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZSwgUHJvcGVydHk+ID0ge1xuICAgICAgYXV0b1NhdmU6IHRydWUsXG4gICAgICBjb21wb25lbnRUb1BsdWdpblNldHRpbmdzVmFsdWVDb252ZXJ0ZXI6ICh2YWx1ZSk6IFByb3BlcnR5VHlwZSA9PiB2YWx1ZSBhcyBQcm9wZXJ0eVR5cGUsXG4gICAgICBwbHVnaW5TZXR0aW5nc1RvQ29tcG9uZW50VmFsdWVDb252ZXJ0ZXI6ICh2YWx1ZSk6IFVJVmFsdWUgPT4gdmFsdWUgYXMgVUlWYWx1ZVxuICAgIH07XG5cbiAgICBjb25zdCBvcHRpb25zRXh0OiBCaW5kVmFsdWVDb21wb25lbnRPcHRpb25zRXh0ZW5kZWQ8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWUsIFByb3BlcnR5PiA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgcGx1Z2luRXh0ID0gcGx1Z2luIGFzIHVua25vd24gYXMgUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz47XG4gICAgY29uc3QgcGx1Z2luU2V0dGluZ3NGbiA9ICgpOiBQbHVnaW5TZXR0aW5ncyA9PiBvcHRpb25zRXh0LnBsdWdpblNldHRpbmdzID8/IHBsdWdpbkV4dC5zZXR0aW5nc0NvcHk7XG5cbiAgICBjb25zdCB2YWxpZGF0ZSA9ICh1aVZhbHVlPzogVUlWYWx1ZSk6IGJvb2xlYW4gPT4ge1xuICAgICAgaWYgKCFvcHRpb25zRXh0LnZhbHVlVmFsaWRhdG9yKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgdWlWYWx1ZSA/Pz0gdGhpcy52YWx1ZUNvbXBvbmVudC5nZXRWYWx1ZSgpO1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gb3B0aW9uc0V4dC52YWx1ZVZhbGlkYXRvcih1aVZhbHVlKTtcbiAgICAgIGNvbnN0IHZhbGlkYXRvckVsZW1lbnQgPSBnZXRWYWxpZGF0b3JFbGVtZW50KHRoaXMudmFsdWVDb21wb25lbnQpO1xuICAgICAgaWYgKHZhbGlkYXRvckVsZW1lbnQpIHtcbiAgICAgICAgdmFsaWRhdG9yRWxlbWVudC5zZXRDdXN0b21WYWxpZGl0eShlcnJvck1lc3NhZ2UgPz8gJycpO1xuICAgICAgICB2YWxpZGF0b3JFbGVtZW50LnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAhZXJyb3JNZXNzYWdlO1xuICAgIH07XG5cbiAgICB0aGlzLnZhbHVlQ29tcG9uZW50XG4gICAgICAuc2V0VmFsdWUob3B0aW9uc0V4dC5wbHVnaW5TZXR0aW5nc1RvQ29tcG9uZW50VmFsdWVDb252ZXJ0ZXIocGx1Z2luU2V0dGluZ3NGbigpW3Byb3BlcnR5XSkpXG4gICAgICAub25DaGFuZ2UoYXN5bmMgKHVpVmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCF2YWxpZGF0ZSh1aVZhbHVlKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwbHVnaW5TZXR0aW5ncyA9IHBsdWdpblNldHRpbmdzRm4oKTtcbiAgICAgICAgcGx1Z2luU2V0dGluZ3NbcHJvcGVydHldID0gb3B0aW9uc0V4dC5jb21wb25lbnRUb1BsdWdpblNldHRpbmdzVmFsdWVDb252ZXJ0ZXIodWlWYWx1ZSk7XG4gICAgICAgIGlmIChvcHRpb25zRXh0LmF1dG9TYXZlKSB7XG4gICAgICAgICAgYXdhaXQgcGx1Z2luRXh0LnNhdmVTZXR0aW5ncyhwbHVnaW5TZXR0aW5ncyk7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCBvcHRpb25zRXh0Lm9uQ2hhbmdlZD8uKCk7XG4gICAgICB9KTtcblxuICAgIHZhbGlkYXRlKCk7XG5cbiAgICBjb25zdCB2YWxpZGF0b3JFbGVtZW50ID0gZ2V0VmFsaWRhdG9yRWxlbWVudCh0aGlzLnZhbHVlQ29tcG9uZW50KTtcbiAgICBpZiAodmFsaWRhdG9yRWxlbWVudCkge1xuICAgICAgdmFsaWRhdG9yRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1cycsICgpID0+IHZhbGlkYXRlKCkpO1xuICAgICAgdmFsaWRhdG9yRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgKCkgPT4gdmFsaWRhdGUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXNFeHRlbmRlZCgpO1xuICB9XG59XG5cbi8qKlxuICogRXh0ZW5kcyBhIFZhbHVlQ29tcG9uZW50IHdpdGggYWRkaXRpb25hbCBmdW5jdGlvbmFsaXR5LlxuICpcbiAqIEB0eXBlUGFyYW0gVUlWYWx1ZSAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSB0aGUgY29tcG9uZW50IGRpc3BsYXlzLlxuICogQHR5cGVQYXJhbSBUVmFsdWVDb21wb25lbnQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgY29tcG9uZW50IGV4dGVuZGluZyBgVmFsdWVDb21wb25lbnRgLlxuICogQHBhcmFtIHZhbHVlQ29tcG9uZW50IC0gVGhlIHZhbHVlIGNvbXBvbmVudCB0byBleHRlbmQuXG4gKiBAcmV0dXJucyBUaGUgdmFsdWUgY29tcG9uZW50IHdpdGggZXh0ZW5kZWQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuZDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxVSVZhbHVlPj4odmFsdWVDb21wb25lbnQ6IFRWYWx1ZUNvbXBvbmVudCAmIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+KTogVmFsdWVDb21wb25lbnRFeFR5cGU8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PiB7XG4gIHJldHVybiBuZXcgVmFsdWVDb21wb25lbnRFeDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQ+KHZhbHVlQ29tcG9uZW50KS5hc0V4dGVuZGVkKCk7XG59XG5cbi8qKlxuICogR2V0cyB0aGUgdmFsaWRhdG9yIGVsZW1lbnQgZnJvbSBhIHZhbHVlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gKlxuICogQHBhcmFtIHZhbHVlQ29tcG9uZW50IC0gVGhlIHZhbHVlIGNvbXBvbmVudCB0byBnZXQgdGhlIHZhbGlkYXRvciBlbGVtZW50IGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgaWYgaXQgZXhpc3RzLCBvciBgbnVsbGAgaWYgaXQgZG9lcyBub3QuXG4gKi9cbmZ1bmN0aW9uIGdldFZhbGlkYXRvckVsZW1lbnQ8VUlWYWx1ZT4odmFsdWVDb21wb25lbnQ6IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+KTogbnVsbCB8IFZhbGlkYXRvckVsZW1lbnQge1xuICBpZiAodmFsdWVDb21wb25lbnQgaW5zdGFuY2VvZiBEcm9wZG93bkNvbXBvbmVudCkge1xuICAgIHJldHVybiB2YWx1ZUNvbXBvbmVudC5zZWxlY3RFbDtcbiAgfVxuXG4gIGlmICh2YWx1ZUNvbXBvbmVudCBpbnN0YW5jZW9mIFNsaWRlckNvbXBvbmVudCkge1xuICAgIHJldHVybiB2YWx1ZUNvbXBvbmVudC5zbGlkZXJFbDtcbiAgfVxuXG4gIGlmICh2YWx1ZUNvbXBvbmVudCBpbnN0YW5jZW9mIFRleHRBcmVhQ29tcG9uZW50KSB7XG4gICAgcmV0dXJuIHZhbHVlQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICBpZiAodmFsdWVDb21wb25lbnQgaW5zdGFuY2VvZiBUZXh0Q29tcG9uZW50KSB7XG4gICAgcmV0dXJuIHZhbHVlQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0Esc0JBTU87QUFPUCxvQkFBa0Q7QUFvRWxELE1BQU0saUJBQTZGO0FBQUEsRUFDMUYsWUFBb0IsZ0JBQWlDO0FBQWpDO0FBQUEsRUFDM0I7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLGFBQTZEO0FBQ2xFLGVBQU8saURBQWtDLENBQUMsR0FBRyxLQUFLLGdCQUFnQixJQUFJO0FBQUEsRUFDeEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFxRE8sS0FJTCxRQUNBLFVBQ0EsU0FDZ0Q7QUFFaEQsVUFBTSxrQkFBd0Y7QUFBQSxNQUM1RixVQUFVO0FBQUEsTUFDVix5Q0FBeUMsQ0FBQyxVQUF3QjtBQUFBLE1BQ2xFLHlDQUF5QyxDQUFDLFVBQW1CO0FBQUEsSUFDL0Q7QUFFQSxVQUFNLGFBQW1GLEVBQUUsR0FBRyxpQkFBaUIsR0FBRyxRQUFRO0FBQzFILFVBQU0sWUFBWTtBQUNsQixVQUFNLG1CQUFtQixNQUFzQixXQUFXLGtCQUFrQixVQUFVO0FBRXRGLFVBQU0sV0FBVyxDQUFDLFlBQStCO0FBQy9DLFVBQUksQ0FBQyxXQUFXLGdCQUFnQjtBQUM5QixlQUFPO0FBQUEsTUFDVDtBQUNBLGtCQUFZLEtBQUssZUFBZSxTQUFTO0FBQ3pDLFlBQU0sZUFBZSxXQUFXLGVBQWUsT0FBTztBQUN0RCxZQUFNQSxvQkFBbUIsb0JBQW9CLEtBQUssY0FBYztBQUNoRSxVQUFJQSxtQkFBa0I7QUFDcEIsUUFBQUEsa0JBQWlCLGtCQUFrQixnQkFBZ0IsRUFBRTtBQUNyRCxRQUFBQSxrQkFBaUIsZUFBZTtBQUFBLE1BQ2xDO0FBRUEsYUFBTyxDQUFDO0FBQUEsSUFDVjtBQUVBLFNBQUssZUFDRixTQUFTLFdBQVcsd0NBQXdDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQ3pGLFNBQVMsT0FBTyxZQUFZO0FBQzNCLFVBQUksQ0FBQyxTQUFTLE9BQU8sR0FBRztBQUN0QjtBQUFBLE1BQ0Y7QUFDQSxZQUFNLGlCQUFpQixpQkFBaUI7QUFDeEMscUJBQWUsUUFBUSxJQUFJLFdBQVcsd0NBQXdDLE9BQU87QUFDckYsVUFBSSxXQUFXLFVBQVU7QUFDdkIsY0FBTSxVQUFVLGFBQWEsY0FBYztBQUFBLE1BQzdDO0FBRUEsWUFBTSxXQUFXLFlBQVk7QUFBQSxJQUMvQixDQUFDO0FBRUgsYUFBUztBQUVULFVBQU0sbUJBQW1CLG9CQUFvQixLQUFLLGNBQWM7QUFDaEUsUUFBSSxrQkFBa0I7QUFDcEIsdUJBQWlCLGlCQUFpQixTQUFTLE1BQU0sU0FBUyxDQUFDO0FBQzNELHVCQUFpQixpQkFBaUIsUUFBUSxNQUFNLFNBQVMsQ0FBQztBQUFBLElBQzVEO0FBRUEsV0FBTyxLQUFLLFdBQVc7QUFBQSxFQUN6QjtBQUNGO0FBVU8sU0FBUyxPQUFtRixnQkFBNkg7QUFDOU4sU0FBTyxJQUFJLGlCQUEyQyxjQUFjLEVBQUUsV0FBVztBQUNuRjtBQVFBLFNBQVMsb0JBQTZCLGdCQUFvRjtBQUN4SCxNQUFJLDBCQUEwQixtQ0FBbUI7QUFDL0MsV0FBTyxlQUFlO0FBQUEsRUFDeEI7QUFFQSxNQUFJLDBCQUEwQixpQ0FBaUI7QUFDN0MsV0FBTyxlQUFlO0FBQUEsRUFDeEI7QUFFQSxNQUFJLDBCQUEwQixtQ0FBbUI7QUFDL0MsV0FBTyxlQUFlO0FBQUEsRUFDeEI7QUFFQSxNQUFJLDBCQUEwQiwrQkFBZTtBQUMzQyxXQUFPLGVBQWU7QUFBQSxFQUN4QjtBQUVBLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFsidmFsaWRhdG9yRWxlbWVudCJdCn0K
120
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL1BsdWdpbi9WYWx1ZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gVmFsdWVDb21wb25lbnRcbiAqIENvbnRhaW5zIHV0aWxpdHkgdHlwZXMgYW5kIGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgdmFsdWUgY29tcG9uZW50cywgd2hpY2ggYXJlIFVJIGNvbXBvbmVudHMgdGhhdCBkaXNwbGF5IGFuZCBlZGl0IHZhbHVlcy5cbiAqL1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgU2xpZGVyQ29tcG9uZW50LFxuICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgVGV4dENvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IEtleXNNYXRjaGluZyB9IGZyb20gJy4uLy4uL0B0eXBlcy50cyc7XG5pbXBvcnQgdHlwZSB7IE1heWJlUHJvbWlzZSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL0hUTUxFbGVtZW50LnRzJztcbmltcG9ydCB0eXBlIHsgUGx1Z2luQmFzZSB9IGZyb20gJy4vUGx1Z2luQmFzZS50cyc7XG5cbmltcG9ydCB7IGFzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyB9IGZyb20gJy4uLy4uL09iamVjdC50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYmluZGluZyBhIHZhbHVlIGNvbXBvbmVudCB0byBhIHBsdWdpbiBzZXR0aW5nLlxuICovXG5pbnRlcmZhY2UgQmluZFZhbHVlQ29tcG9uZW50T3B0aW9uczxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZT4ge1xuICAvKipcbiAgICogSWYgdHJ1ZSwgc2F2ZXMgdGhlIHBsdWdpbiBzZXR0aW5ncyBhdXRvbWF0aWNhbGx5IGFmdGVyIHRoZSBjb21wb25lbnQgdmFsdWUgY2hhbmdlcy4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICBhdXRvU2F2ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEEgY2FsbGJhY2sgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudCBjaGFuZ2VzLlxuICAgKi9cbiAgb25DaGFuZ2VkPzogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luIHNldHRpbmdzIG9iamVjdCB0byBiaW5kIHRoZSBjb21wb25lbnQgdG8uIERlZmF1bHQgaXMgdGhlIHBsdWdpbidzIGN1cnJlbnQgc2V0dGluZ3MuXG4gICAqL1xuICBwbHVnaW5TZXR0aW5ncz86IFBsdWdpblNldHRpbmdzO1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIFVJIHZhbHVlIGJlZm9yZSBzZXR0aW5nIGl0IG9uIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqIEBwYXJhbSB1aVZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBVSSBjb21wb25lbnQuXG4gICAqIEByZXR1cm5zIEFuIGVycm9yIG1lc3NhZ2UgaWYgdGhlIHZhbHVlIGlzIGludmFsaWQsIG9yIGBudWxsYCBpZiBpdCBpcyB2YWxpZC5cbiAgICovXG4gIHZhbHVlVmFsaWRhdG9yPzogKHVpVmFsdWU6IFVJVmFsdWUpID0+IG51bGwgfCBzdHJpbmc7XG59XG5cbi8qKlxuICogRXh0ZW5kZWQgb3B0aW9ucyBmb3IgYmluZGluZyBhIHZhbHVlIGNvbXBvbmVudCB0byBhIHBsdWdpbiBzZXR0aW5nLlxuICovXG5pbnRlcmZhY2UgQmluZFZhbHVlQ29tcG9uZW50T3B0aW9uc0V4dGVuZGVkPFBsdWdpblNldHRpbmdzLCBVSVZhbHVlLCBQcm9wZXJ0eSBleHRlbmRzIGtleW9mIFBsdWdpblNldHRpbmdzPiBleHRlbmRzIEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnM8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+IHtcbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBVSSBjb21wb25lbnQncyB2YWx1ZSBiYWNrIHRvIHRoZSBwbHVnaW4gc2V0dGluZ3MgdmFsdWUuXG4gICAqIEBwYXJhbSB1aVZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBVSSBjb21wb25lbnQuXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSB0byBzZXQgb24gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICovXG4gIGNvbXBvbmVudFRvUGx1Z2luU2V0dGluZ3NWYWx1ZUNvbnZlcnRlcjogKHVpVmFsdWU6IFVJVmFsdWUpID0+IFBsdWdpblNldHRpbmdzW1Byb3BlcnR5XTtcblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHBsdWdpbiBzZXR0aW5ncyB2YWx1ZSB0byB0aGUgdmFsdWUgdXNlZCBieSB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gcGx1Z2luU2V0dGluZ3NWYWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICogQHJldHVybnMgVGhlIHZhbHVlIHRvIHNldCBvbiB0aGUgVUkgY29tcG9uZW50LlxuICAgKi9cbiAgcGx1Z2luU2V0dGluZ3NUb0NvbXBvbmVudFZhbHVlQ29udmVydGVyOiAocGx1Z2luU2V0dGluZ3NWYWx1ZTogUGx1Z2luU2V0dGluZ3NbUHJvcGVydHldKSA9PiBVSVZhbHVlO1xufVxuXG4vKipcbiAqIFZhbHVlQ29tcG9uZW50IHRoYXQgY2FuIGJlIHVzZWQgYXMgYW4gb3JpZ2luYWwgVmFsdWVDb21wb25lbnQgd2l0aCBleHRlbmRlZCBmdW5jdGlvbmFsaXR5LlxuICovXG50eXBlIFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+PiA9IFRWYWx1ZUNvbXBvbmVudCAmIFZhbHVlQ29tcG9uZW50RXg8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PjtcblxuLyoqXG4gKiBBIFZhbHVlQ29tcG9uZW50IHRoYXQgY2FuIHRyYWNrIGNoYW5nZXMuXG4gKi9cbmludGVyZmFjZSBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PFQ+IHtcbiAgLyoqXG4gICAqIFNldHMgYSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudCBjaGFuZ2VzLlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBBIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQgY2hhbmdlcy5cbiAgICovXG4gIG9uQ2hhbmdlKGNhbGxiYWNrOiAobmV3VmFsdWU6IFQpID0+IFByb21pc2U8dm9pZD4pOiB0aGlzO1xufVxuXG4vKipcbiAqIFZhbHVlQ29tcG9uZW50IHdpdGggZXh0ZW5kZWQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuY2xhc3MgVmFsdWVDb21wb25lbnRFeDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxVSVZhbHVlPj4ge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSB2YWx1ZUNvbXBvbmVudDogVFZhbHVlQ29tcG9uZW50KSB7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgVmFsdWVDb21wb25lbnQgd2l0aCBleHRlbmRlZCBmdW5jdGlvbmFsaXR5LlxuICAgKi9cbiAgcHVibGljIGFzRXh0ZW5kZWQoKTogVmFsdWVDb21wb25lbnRFeFR5cGU8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIGFzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh7fSwgdGhpcy52YWx1ZUNvbXBvbmVudCwgdGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogQmluZHMgdGhlIFZhbHVlQ29tcG9uZW50IHRvIGEgcHJvcGVydHkgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncy5cbiAgICpcbiAgICogQHR5cGVQYXJhbSBQbHVnaW5TZXR0aW5ncyAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gc2V0dGluZ3Mgb2JqZWN0LlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbi5cbiAgICogQHBhcmFtIHByb3BlcnR5IC0gVGhlIHByb3BlcnR5IGtleSBpbiBgUGx1Z2luU2V0dGluZ3NgIHRvIGJpbmQgdG8gdGhlIFVJIGNvbXBvbmVudC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gICAqIEByZXR1cm5zIFRoZSBgVmFsdWVDb21wb25lbnRgIGluc3RhbmNlIHRoYXQgd2FzIGJvdW5kIHRvIHRoZSBwcm9wZXJ0eS5cbiAgICovXG4gIHB1YmxpYyBiaW5kPFxuICAgIFBsdWdpblNldHRpbmdzIGV4dGVuZHMgb2JqZWN0LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1wYXJhbWV0ZXJzXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBLZXlzTWF0Y2hpbmc8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+XG4gID4oXG4gICAgcGx1Z2luOiBQbHVnaW5CYXNlPFBsdWdpblNldHRpbmdzPixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgb3B0aW9ucz86IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnM8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWU+XG4gICk6IFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudD47XG5cbiAgLyoqXG4gICAqIEJpbmRzIHRoZSBWYWx1ZUNvbXBvbmVudCB0byBhIHByb3BlcnR5IGluIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqXG4gICAqIEB0eXBlUGFyYW0gUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IGV4dGVuZHMgYFBsdWdpbkJhc2VgLlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAdHlwZVBhcmFtIFBsdWdpblNldHRpbmdzIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiBzZXR0aW5ncyBvYmplY3QuXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luLlxuICAgKiBAcGFyYW0gcHJvcGVydHkgLSBUaGUgcHJvcGVydHkga2V5IGluIGBQbHVnaW5TZXR0aW5nc2AgdG8gYmluZCB0byB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGBWYWx1ZUNvbXBvbmVudGAgaW5zdGFuY2UgdGhhdCB3YXMgYm91bmQgdG8gdGhlIHByb3BlcnR5LlxuICAgKi9cbiAgcHVibGljIGJpbmQ8XG4gICAgUGx1Z2luU2V0dGluZ3MgZXh0ZW5kcyBvYmplY3QsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBQbHVnaW5TZXR0aW5nc1xuICA+KFxuICAgIHBsdWdpbjogUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz4sXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIG9wdGlvbnM6IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnNFeHRlbmRlZDxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZSwgUHJvcGVydHk+XG4gICk6IFZhbHVlQ29tcG9uZW50RXhUeXBlPFVJVmFsdWUsIFRWYWx1ZUNvbXBvbmVudD47XG5cbiAgLyoqXG4gICAqIEJpbmRzIHRoZSBWYWx1ZUNvbXBvbmVudCB0byBhIHByb3BlcnR5IGluIHRoZSBwbHVnaW4gc2V0dGluZ3MuXG4gICAqXG4gICAqIEB0eXBlUGFyYW0gUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IGV4dGVuZHMgYFBsdWdpbkJhc2VgLlxuICAgKiBAdHlwZVBhcmFtIFByb3BlcnR5IC0gVGhlIGtleSBvZiB0aGUgcGx1Z2luIHNldHRpbmcgdGhhdCB0aGUgY29tcG9uZW50IGlzIGJvdW5kIHRvLlxuICAgKiBAdHlwZVBhcmFtIFBsdWdpblNldHRpbmdzIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiBzZXR0aW5ncyBvYmplY3QuXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luLlxuICAgKiBAcGFyYW0gcHJvcGVydHkgLSBUaGUgcHJvcGVydHkga2V5IGluIGBQbHVnaW5TZXR0aW5nc2AgdG8gYmluZCB0byB0aGUgVUkgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGBWYWx1ZUNvbXBvbmVudGAgaW5zdGFuY2UgdGhhdCB3YXMgYm91bmQgdG8gdGhlIHByb3BlcnR5LlxuICAgKi9cbiAgcHVibGljIGJpbmQ8XG4gICAgUGx1Z2luU2V0dGluZ3MgZXh0ZW5kcyBvYmplY3QsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBQbHVnaW5TZXR0aW5nc1xuICA+KFxuICAgIHBsdWdpbjogUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz4sXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIG9wdGlvbnM/OiBCaW5kVmFsdWVDb21wb25lbnRPcHRpb25zPFBsdWdpblNldHRpbmdzLCBVSVZhbHVlPlxuICApOiBWYWx1ZUNvbXBvbmVudEV4VHlwZTxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQ+IHtcbiAgICB0eXBlIFByb3BlcnR5VHlwZSA9IFBsdWdpblNldHRpbmdzW1Byb3BlcnR5XTtcbiAgICBjb25zdCBERUZBVUxUX09QVElPTlM6IEJpbmRWYWx1ZUNvbXBvbmVudE9wdGlvbnNFeHRlbmRlZDxQbHVnaW5TZXR0aW5ncywgVUlWYWx1ZSwgUHJvcGVydHk+ID0ge1xuICAgICAgYXV0b1NhdmU6IHRydWUsXG4gICAgICBjb21wb25lbnRUb1BsdWdpblNldHRpbmdzVmFsdWVDb252ZXJ0ZXI6ICh2YWx1ZSk6IFByb3BlcnR5VHlwZSA9PiB2YWx1ZSBhcyBQcm9wZXJ0eVR5cGUsXG4gICAgICBwbHVnaW5TZXR0aW5nc1RvQ29tcG9uZW50VmFsdWVDb252ZXJ0ZXI6ICh2YWx1ZSk6IFVJVmFsdWUgPT4gdmFsdWUgYXMgVUlWYWx1ZVxuICAgIH07XG5cbiAgICBjb25zdCBvcHRpb25zRXh0OiBCaW5kVmFsdWVDb21wb25lbnRPcHRpb25zRXh0ZW5kZWQ8UGx1Z2luU2V0dGluZ3MsIFVJVmFsdWUsIFByb3BlcnR5PiA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgcGx1Z2luRXh0ID0gcGx1Z2luIGFzIHVua25vd24gYXMgUGx1Z2luQmFzZTxQbHVnaW5TZXR0aW5ncz47XG4gICAgY29uc3QgcGx1Z2luU2V0dGluZ3NGbiA9ICgpOiBQbHVnaW5TZXR0aW5ncyA9PiBvcHRpb25zRXh0LnBsdWdpblNldHRpbmdzID8/IHBsdWdpbkV4dC5zZXR0aW5nc0NvcHk7XG5cbiAgICBjb25zdCB2YWxpZGF0ZSA9ICh1aVZhbHVlPzogVUlWYWx1ZSk6IGJvb2xlYW4gPT4ge1xuICAgICAgaWYgKCFvcHRpb25zRXh0LnZhbHVlVmFsaWRhdG9yKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgdWlWYWx1ZSA/Pz0gdGhpcy52YWx1ZUNvbXBvbmVudC5nZXRWYWx1ZSgpO1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gb3B0aW9uc0V4dC52YWx1ZVZhbGlkYXRvcih1aVZhbHVlKTtcbiAgICAgIGNvbnN0IHZhbGlkYXRvckVsZW1lbnQgPSBnZXRWYWxpZGF0b3JFbGVtZW50KHRoaXMudmFsdWVDb21wb25lbnQpO1xuICAgICAgaWYgKHZhbGlkYXRvckVsZW1lbnQpIHtcbiAgICAgICAgdmFsaWRhdG9yRWxlbWVudC5zZXRDdXN0b21WYWxpZGl0eShlcnJvck1lc3NhZ2UgPz8gJycpO1xuICAgICAgICB2YWxpZGF0b3JFbGVtZW50LnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAhZXJyb3JNZXNzYWdlO1xuICAgIH07XG5cbiAgICB0aGlzLnZhbHVlQ29tcG9uZW50XG4gICAgICAuc2V0VmFsdWUob3B0aW9uc0V4dC5wbHVnaW5TZXR0aW5nc1RvQ29tcG9uZW50VmFsdWVDb252ZXJ0ZXIocGx1Z2luU2V0dGluZ3NGbigpW3Byb3BlcnR5XSkpXG4gICAgICAub25DaGFuZ2UoYXN5bmMgKHVpVmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCF2YWxpZGF0ZSh1aVZhbHVlKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwbHVnaW5TZXR0aW5ncyA9IHBsdWdpblNldHRpbmdzRm4oKTtcbiAgICAgICAgcGx1Z2luU2V0dGluZ3NbcHJvcGVydHldID0gb3B0aW9uc0V4dC5jb21wb25lbnRUb1BsdWdpblNldHRpbmdzVmFsdWVDb252ZXJ0ZXIodWlWYWx1ZSk7XG4gICAgICAgIGlmIChvcHRpb25zRXh0LmF1dG9TYXZlKSB7XG4gICAgICAgICAgYXdhaXQgcGx1Z2luRXh0LnNhdmVTZXR0aW5ncyhwbHVnaW5TZXR0aW5ncyk7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCBvcHRpb25zRXh0Lm9uQ2hhbmdlZD8uKCk7XG4gICAgICB9KTtcblxuICAgIHZhbGlkYXRlKCk7XG5cbiAgICBjb25zdCB2YWxpZGF0b3JFbGVtZW50ID0gZ2V0VmFsaWRhdG9yRWxlbWVudCh0aGlzLnZhbHVlQ29tcG9uZW50KTtcbiAgICBpZiAodmFsaWRhdG9yRWxlbWVudCkge1xuICAgICAgdmFsaWRhdG9yRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1cycsICgpID0+IHZhbGlkYXRlKCkpO1xuICAgICAgdmFsaWRhdG9yRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgKCkgPT4gdmFsaWRhdGUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXNFeHRlbmRlZCgpO1xuICB9XG59XG5cbi8qKlxuICogRXh0ZW5kcyBhIFZhbHVlQ29tcG9uZW50IHdpdGggYWRkaXRpb25hbCBmdW5jdGlvbmFsaXR5LlxuICpcbiAqIEB0eXBlUGFyYW0gVUlWYWx1ZSAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSB0aGUgY29tcG9uZW50IGRpc3BsYXlzLlxuICogQHR5cGVQYXJhbSBUVmFsdWVDb21wb25lbnQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgY29tcG9uZW50IGV4dGVuZGluZyBgVmFsdWVDb21wb25lbnRgLlxuICogQHBhcmFtIHZhbHVlQ29tcG9uZW50IC0gVGhlIHZhbHVlIGNvbXBvbmVudCB0byBleHRlbmQuXG4gKiBAcmV0dXJucyBUaGUgdmFsdWUgY29tcG9uZW50IHdpdGggZXh0ZW5kZWQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuZDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxVSVZhbHVlPj4odmFsdWVDb21wb25lbnQ6IFRWYWx1ZUNvbXBvbmVudCAmIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+KTogVmFsdWVDb21wb25lbnRFeFR5cGU8VUlWYWx1ZSwgVFZhbHVlQ29tcG9uZW50PiB7XG4gIHJldHVybiBuZXcgVmFsdWVDb21wb25lbnRFeDxVSVZhbHVlLCBUVmFsdWVDb21wb25lbnQ+KHZhbHVlQ29tcG9uZW50KS5hc0V4dGVuZGVkKCk7XG59XG5cbi8qKlxuICogR2V0cyB0aGUgdmFsaWRhdG9yIGVsZW1lbnQgZnJvbSBhIHZhbHVlIGNvbXBvbmVudCBpZiBpdCBleGlzdHMuXG4gKlxuICogQHBhcmFtIHZhbHVlQ29tcG9uZW50IC0gVGhlIHZhbHVlIGNvbXBvbmVudCB0byBnZXQgdGhlIHZhbGlkYXRvciBlbGVtZW50IGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgaWYgaXQgZXhpc3RzLCBvciBgbnVsbGAgaWYgaXQgZG9lcyBub3QuXG4gKi9cbmZ1bmN0aW9uIGdldFZhbGlkYXRvckVsZW1lbnQ8VUlWYWx1ZT4odmFsdWVDb21wb25lbnQ6IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPFVJVmFsdWU+KTogbnVsbCB8IFZhbGlkYXRvckVsZW1lbnQge1xuICBpZiAodmFsdWVDb21wb25lbnQgaW5zdGFuY2VvZiBEcm9wZG93bkNvbXBvbmVudCkge1xuICAgIHJldHVybiB2YWx1ZUNvbXBvbmVudC5zZWxlY3RFbDtcbiAgfVxuXG4gIGlmICh2YWx1ZUNvbXBvbmVudCBpbnN0YW5jZW9mIFNsaWRlckNvbXBvbmVudCkge1xuICAgIHJldHVybiB2YWx1ZUNvbXBvbmVudC5zbGlkZXJFbDtcbiAgfVxuXG4gIGlmICh2YWx1ZUNvbXBvbmVudCBpbnN0YW5jZW9mIFRleHRBcmVhQ29tcG9uZW50KSB7XG4gICAgcmV0dXJuIHZhbHVlQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICBpZiAodmFsdWVDb21wb25lbnQgaW5zdGFuY2VvZiBUZXh0Q29tcG9uZW50KSB7XG4gICAgcmV0dXJuIHZhbHVlQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQSxzQkFNTztBQU9QLG9CQUFrRDtBQW9FbEQsTUFBTSxpQkFBNkY7QUFBQSxFQUMxRixZQUFvQixnQkFBaUM7QUFBakM7QUFBQSxFQUMzQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS08sYUFBNkQ7QUFDbEUsZUFBTyxpREFBa0MsQ0FBQyxHQUFHLEtBQUssZ0JBQWdCLElBQUk7QUFBQSxFQUN4RTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQXFETyxLQUlMLFFBQ0EsVUFDQSxTQUNnRDtBQUVoRCxVQUFNLGtCQUF3RjtBQUFBLE1BQzVGLFVBQVU7QUFBQSxNQUNWLHlDQUF5QyxDQUFDLFVBQXdCO0FBQUEsTUFDbEUseUNBQXlDLENBQUMsVUFBbUI7QUFBQSxJQUMvRDtBQUVBLFVBQU0sYUFBbUYsRUFBRSxHQUFHLGlCQUFpQixHQUFHLFFBQVE7QUFDMUgsVUFBTSxZQUFZO0FBQ2xCLFVBQU0sbUJBQW1CLE1BQXNCLFdBQVcsa0JBQWtCLFVBQVU7QUFFdEYsVUFBTSxXQUFXLENBQUMsWUFBK0I7QUFDL0MsVUFBSSxDQUFDLFdBQVcsZ0JBQWdCO0FBQzlCLGVBQU87QUFBQSxNQUNUO0FBQ0Esa0JBQVksS0FBSyxlQUFlLFNBQVM7QUFDekMsWUFBTSxlQUFlLFdBQVcsZUFBZSxPQUFPO0FBQ3RELFlBQU1BLG9CQUFtQixvQkFBb0IsS0FBSyxjQUFjO0FBQ2hFLFVBQUlBLG1CQUFrQjtBQUNwQixRQUFBQSxrQkFBaUIsa0JBQWtCLGdCQUFnQixFQUFFO0FBQ3JELFFBQUFBLGtCQUFpQixlQUFlO0FBQUEsTUFDbEM7QUFFQSxhQUFPLENBQUM7QUFBQSxJQUNWO0FBRUEsU0FBSyxlQUNGLFNBQVMsV0FBVyx3Q0FBd0MsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFDekYsU0FBUyxPQUFPLFlBQVk7QUFDM0IsVUFBSSxDQUFDLFNBQVMsT0FBTyxHQUFHO0FBQ3RCO0FBQUEsTUFDRjtBQUNBLFlBQU0saUJBQWlCLGlCQUFpQjtBQUN4QyxxQkFBZSxRQUFRLElBQUksV0FBVyx3Q0FBd0MsT0FBTztBQUNyRixVQUFJLFdBQVcsVUFBVTtBQUN2QixjQUFNLFVBQVUsYUFBYSxjQUFjO0FBQUEsTUFDN0M7QUFFQSxZQUFNLFdBQVcsWUFBWTtBQUFBLElBQy9CLENBQUM7QUFFSCxhQUFTO0FBRVQsVUFBTSxtQkFBbUIsb0JBQW9CLEtBQUssY0FBYztBQUNoRSxRQUFJLGtCQUFrQjtBQUNwQix1QkFBaUIsaUJBQWlCLFNBQVMsTUFBTSxTQUFTLENBQUM7QUFDM0QsdUJBQWlCLGlCQUFpQixRQUFRLE1BQU0sU0FBUyxDQUFDO0FBQUEsSUFDNUQ7QUFFQSxXQUFPLEtBQUssV0FBVztBQUFBLEVBQ3pCO0FBQ0Y7QUFVTyxTQUFTLE9BQW1GLGdCQUE2SDtBQUM5TixTQUFPLElBQUksaUJBQTJDLGNBQWMsRUFBRSxXQUFXO0FBQ25GO0FBUUEsU0FBUyxvQkFBNkIsZ0JBQW9GO0FBQ3hILE1BQUksMEJBQTBCLG1DQUFtQjtBQUMvQyxXQUFPLGVBQWU7QUFBQSxFQUN4QjtBQUVBLE1BQUksMEJBQTBCLGlDQUFpQjtBQUM3QyxXQUFPLGVBQWU7QUFBQSxFQUN4QjtBQUVBLE1BQUksMEJBQTBCLG1DQUFtQjtBQUMvQyxXQUFPLGVBQWU7QUFBQSxFQUN4QjtBQUVBLE1BQUksMEJBQTBCLCtCQUFlO0FBQzNDLFdBQU8sZUFBZTtBQUFBLEVBQ3hCO0FBRUEsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogWyJ2YWxpZGF0b3JFbGVtZW50Il0KfQo=
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __create = Object.create;
@@ -43,12 +45,12 @@ __export(Plugin_exports, {
43
45
  ValueComponent: () => ValueComponent
44
46
  });
45
47
  module.exports = __toCommonJS(Plugin_exports);
46
- var ObsidianPluginRepoPaths = __toESM(require('./ObsidianPluginRepoPaths.cjs'), 1);
47
- var Plugin = __toESM(require('./Plugin.cjs'), 1);
48
- var PluginBase = __toESM(require('./PluginBase.cjs'), 1);
49
- var PluginSettings = __toESM(require('./PluginSettings.cjs'), 1);
50
- var PluginSettingsTabBase = __toESM(require('./PluginSettingsTabBase.cjs'), 1);
51
- var ValueComponent = __toESM(require('./ValueComponent.cjs'), 1);
48
+ var ObsidianPluginRepoPaths = __toESM(__extractDefault(require('./ObsidianPluginRepoPaths.cjs')), 1);
49
+ var Plugin = __toESM(__extractDefault(require('./Plugin.cjs')), 1);
50
+ var PluginBase = __toESM(__extractDefault(require('./PluginBase.cjs')), 1);
51
+ var PluginSettings = __toESM(__extractDefault(require('./PluginSettings.cjs')), 1);
52
+ var PluginSettingsTabBase = __toESM(__extractDefault(require('./PluginSettingsTabBase.cjs')), 1);
53
+ var ValueComponent = __toESM(__extractDefault(require('./ValueComponent.cjs')), 1);
52
54
  // Annotate the CommonJS export names for ESM import in node:
53
55
  0 && (module.exports = {
54
56
  ObsidianPluginRepoPaths,
@@ -58,4 +60,4 @@ var ValueComponent = __toESM(require('./ValueComponent.cjs'), 1);
58
60
  PluginSettingsTabBase,
59
61
  ValueComponent
60
62
  });
61
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL1BsdWdpbi9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyogVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgQlVJTEQgU0NSSVBUICovXG5cbmV4cG9ydCAqIGFzIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIGZyb20gJy4vT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMudHMnO1xuZXhwb3J0ICogYXMgUGx1Z2luIGZyb20gJy4vUGx1Z2luLnRzJztcbmV4cG9ydCAqIGFzIFBsdWdpbkJhc2UgZnJvbSAnLi9QbHVnaW5CYXNlLnRzJztcbmV4cG9ydCAqIGFzIFBsdWdpblNldHRpbmdzIGZyb20gJy4vUGx1Z2luU2V0dGluZ3MudHMnO1xuZXhwb3J0ICogYXMgUGx1Z2luU2V0dGluZ3NUYWJCYXNlIGZyb20gJy4vUGx1Z2luU2V0dGluZ3NUYWJCYXNlLnRzJztcbmV4cG9ydCAqIGFzIFZhbHVlQ29tcG9uZW50IGZyb20gJy4vVmFsdWVDb21wb25lbnQudHMnO1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUVBLDhCQUF5QztBQUN6QyxhQUF3QjtBQUN4QixpQkFBNEI7QUFDNUIscUJBQWdDO0FBQ2hDLDRCQUF1QztBQUN2QyxxQkFBZ0M7IiwKICAibmFtZXMiOiBbXQp9Cg==
63
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL1BsdWdpbi9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyogVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgQlVJTEQgU0NSSVBUICovXG5cbmV4cG9ydCAqIGFzIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIGZyb20gJy4vT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMudHMnO1xuZXhwb3J0ICogYXMgUGx1Z2luIGZyb20gJy4vUGx1Z2luLnRzJztcbmV4cG9ydCAqIGFzIFBsdWdpbkJhc2UgZnJvbSAnLi9QbHVnaW5CYXNlLnRzJztcbmV4cG9ydCAqIGFzIFBsdWdpblNldHRpbmdzIGZyb20gJy4vUGx1Z2luU2V0dGluZ3MudHMnO1xuZXhwb3J0ICogYXMgUGx1Z2luU2V0dGluZ3NUYWJCYXNlIGZyb20gJy4vUGx1Z2luU2V0dGluZ3NUYWJCYXNlLnRzJztcbmV4cG9ydCAqIGFzIFZhbHVlQ29tcG9uZW50IGZyb20gJy4vVmFsdWVDb21wb25lbnQudHMnO1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBRUEsOEJBQXlDO0FBQ3pDLGFBQXdCO0FBQ3hCLGlCQUE0QjtBQUM1QixxQkFBZ0M7QUFDaEMsNEJBQXVDO0FBQ3ZDLHFCQUFnQzsiLAogICJuYW1lcyI6IFtdCn0K
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -73,4 +75,4 @@ async function processNextQueueItem(app) {
73
75
  addToQueueAndWait,
74
76
  flushQueue
75
77
  });
76
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1F1ZXVlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFF1ZXVlXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgZW5xdWV1aW5nIGFuZCBwcm9jZXNzaW5nIGZ1bmN0aW9ucyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBNYXliZVByb21pc2UgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlV3JhcHBlciB9IGZyb20gJy4vQXBwLnRzJztcblxuaW1wb3J0IHtcbiAgYWRkRXJyb3JIYW5kbGVyLFxuICBydW5XaXRoVGltZW91dFxufSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBnZXRTdGFja1RyYWNlIH0gZnJvbSAnLi4vRXJyb3IudHMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uL0Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZSB9IGZyb20gJy4vQXBwLnRzJztcbmltcG9ydCB7IGludm9rZUFzeW5jQW5kTG9nIH0gZnJvbSAnLi9Mb2dnZXIudHMnO1xuXG5pbnRlcmZhY2UgUXVldWUge1xuICBpdGVtczogUXVldWVJdGVtW107XG4gIHByb21pc2U6IFByb21pc2U8dm9pZD47XG59XG5cbmludGVyZmFjZSBRdWV1ZUl0ZW0ge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWludmFsaWQtdm9pZC10eXBlXG4gIGZuKHRoaXM6IHZvaWQpOiBNYXliZVByb21pc2U8dm9pZD47XG4gIHN0YWNrVHJhY2U6IHN0cmluZztcbiAgdGltZW91dEluTWlsbGlzZWNvbmRzOiBudW1iZXI7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhc3luY2hyb25vdXMgZnVuY3Rpb24gdG8gYmUgZXhlY3V0ZWQgYWZ0ZXIgdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGNvbXBsZXRlcy5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIGZuIC0gVGhlIGZ1bmN0aW9uIHRvIGFkZC5cbiAqIEBwYXJhbSB0aW1lb3V0SW5NaWxsaXNlY29uZHMgLSBUaGUgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGRUb1F1ZXVlKGFwcDogQXBwLCBmbjogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+LCB0aW1lb3V0SW5NaWxsaXNlY29uZHM/OiBudW1iZXIpOiB2b2lkIHtcbiAgdm9pZCBhZGRUb1F1ZXVlQW5kV2FpdChhcHAsIGZuLCB0aW1lb3V0SW5NaWxsaXNlY29uZHMpO1xufVxuXG4vKipcbiAqIEFkZHMgYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkIGFmdGVyIHRoZSBwcmV2aW91cyBmdW5jdGlvbiBjb21wbGV0ZXMgYW5kIHJldHVybnMgYSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZnVuY3Rpb24gY29tcGxldGVzLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gYWRkLlxuICogQHBhcmFtIHRpbWVvdXRJbk1pbGxpc2Vjb25kcyAtIFRoZSB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFkZFRvUXVldWVBbmRXYWl0KGFwcDogQXBwLCBmbjogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+LCB0aW1lb3V0SW5NaWxsaXNlY29uZHM/OiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgREVGQVVMVF9USU1FT1VUX0lOX01JTExJU0VDT05EUyA9IDYwMDAwO1xuICB0aW1lb3V0SW5NaWxsaXNlY29uZHMgPz89IERFRkFVTFRfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFM7XG4gIGNvbnN0IHN0YWNrVHJhY2UgPSBnZXRTdGFja1RyYWNlKCk7XG4gIGNvbnN0IHF1ZXVlID0gZ2V0UXVldWUoYXBwKS52YWx1ZTtcbiAgcXVldWUuaXRlbXMucHVzaCh7IGZuLCBzdGFja1RyYWNlLCB0aW1lb3V0SW5NaWxsaXNlY29uZHMgfSk7XG4gIHF1ZXVlLnByb21pc2UgPSBxdWV1ZS5wcm9taXNlLnRoZW4oKCkgPT4gcHJvY2Vzc05leHRRdWV1ZUl0ZW0oYXBwKSk7XG4gIGF3YWl0IHF1ZXVlLnByb21pc2U7XG59XG5cbi8qKlxuICogRmx1c2hlcyB0aGUgcXVldWU7XG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZsdXNoUXVldWUoYXBwOiBBcHApOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYWRkVG9RdWV1ZUFuZFdhaXQoYXBwLCBub29wKTtcbn1cblxuZnVuY3Rpb24gZ2V0UXVldWUoYXBwOiBBcHApOiBWYWx1ZVdyYXBwZXI8UXVldWU+IHtcbiAgcmV0dXJuIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZShhcHAsICdxdWV1ZScsIHsgaXRlbXM6IFtdLCBwcm9taXNlOiBQcm9taXNlLnJlc29sdmUoKSB9KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcHJvY2Vzc05leHRRdWV1ZUl0ZW0oYXBwOiBBcHApOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcXVldWUgPSBnZXRRdWV1ZShhcHApLnZhbHVlO1xuICBjb25zdCBpdGVtID0gcXVldWUuaXRlbXNbMF07XG4gIGlmICghaXRlbSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IGFkZEVycm9ySGFuZGxlcigoKSA9PiBydW5XaXRoVGltZW91dChpdGVtLnRpbWVvdXRJbk1pbGxpc2Vjb25kcywgKCkgPT4gaW52b2tlQXN5bmNBbmRMb2cocHJvY2Vzc05leHRRdWV1ZUl0ZW0ubmFtZSwgaXRlbS5mbiwgaXRlbS5zdGFja1RyYWNlKSkpO1xuICBxdWV1ZS5pdGVtcy5zaGlmdCgpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBZUEsbUJBR087QUFDUCxtQkFBOEI7QUFDOUIsc0JBQXFCO0FBQ3JCLGlCQUF5QztBQUN6QyxvQkFBa0M7QUF0QmxDLElBQUksWUFBWSxXQUFXLFNBQVMsS0FBSztBQUFBLEVBQ3ZDLE9BQU8sTUFBSTtBQUFBLEVBQ1gsT0FBTyxDQUFDO0FBQUEsRUFDUixZQUFZO0FBQ2Q7QUF1Q08sU0FBUyxXQUFXLEtBQVUsSUFBOEIsdUJBQXNDO0FBQ3ZHLE9BQUssa0JBQWtCLEtBQUssSUFBSSxxQkFBcUI7QUFDdkQ7QUFTQSxlQUFzQixrQkFBa0IsS0FBVSxJQUE4Qix1QkFBK0M7QUFDN0gsUUFBTSxrQ0FBa0M7QUFDeEMsNEJBQTBCO0FBQzFCLFFBQU0saUJBQWEsNEJBQWM7QUFDakMsUUFBTSxRQUFRLFNBQVMsR0FBRyxFQUFFO0FBQzVCLFFBQU0sTUFBTSxLQUFLLEVBQUUsSUFBSSxZQUFZLHNCQUFzQixDQUFDO0FBQzFELFFBQU0sVUFBVSxNQUFNLFFBQVEsS0FBSyxNQUFNLHFCQUFxQixHQUFHLENBQUM7QUFDbEUsUUFBTSxNQUFNO0FBQ2Q7QUFPQSxlQUFzQixXQUFXLEtBQXlCO0FBQ3hELFFBQU0sa0JBQWtCLEtBQUssb0JBQUk7QUFDbkM7QUFFQSxTQUFTLFNBQVMsS0FBK0I7QUFDL0MsYUFBTyxxQ0FBeUIsS0FBSyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsU0FBUyxRQUFRLFFBQVEsRUFBRSxDQUFDO0FBQ3pGO0FBRUEsZUFBZSxxQkFBcUIsS0FBeUI7QUFDM0QsUUFBTSxRQUFRLFNBQVMsR0FBRyxFQUFFO0FBQzVCLFFBQU0sT0FBTyxNQUFNLE1BQU0sQ0FBQztBQUMxQixNQUFJLENBQUMsTUFBTTtBQUNUO0FBQUEsRUFDRjtBQUVBLFlBQU0sOEJBQWdCLFVBQU0sNkJBQWUsS0FBSyx1QkFBdUIsVUFBTSxpQ0FBa0IscUJBQXFCLE1BQU0sS0FBSyxJQUFJLEtBQUssVUFBVSxDQUFDLENBQUM7QUFDcEosUUFBTSxNQUFNLE1BQU07QUFDcEI7IiwKICAibmFtZXMiOiBbXQp9Cg==
78
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1F1ZXVlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFF1ZXVlXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgZW5xdWV1aW5nIGFuZCBwcm9jZXNzaW5nIGZ1bmN0aW9ucyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBNYXliZVByb21pc2UgfSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlV3JhcHBlciB9IGZyb20gJy4vQXBwLnRzJztcblxuaW1wb3J0IHtcbiAgYWRkRXJyb3JIYW5kbGVyLFxuICBydW5XaXRoVGltZW91dFxufSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBnZXRTdGFja1RyYWNlIH0gZnJvbSAnLi4vRXJyb3IudHMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uL0Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZSB9IGZyb20gJy4vQXBwLnRzJztcbmltcG9ydCB7IGludm9rZUFzeW5jQW5kTG9nIH0gZnJvbSAnLi9Mb2dnZXIudHMnO1xuXG5pbnRlcmZhY2UgUXVldWUge1xuICBpdGVtczogUXVldWVJdGVtW107XG4gIHByb21pc2U6IFByb21pc2U8dm9pZD47XG59XG5cbmludGVyZmFjZSBRdWV1ZUl0ZW0ge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWludmFsaWQtdm9pZC10eXBlXG4gIGZuKHRoaXM6IHZvaWQpOiBNYXliZVByb21pc2U8dm9pZD47XG4gIHN0YWNrVHJhY2U6IHN0cmluZztcbiAgdGltZW91dEluTWlsbGlzZWNvbmRzOiBudW1iZXI7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhc3luY2hyb25vdXMgZnVuY3Rpb24gdG8gYmUgZXhlY3V0ZWQgYWZ0ZXIgdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGNvbXBsZXRlcy5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIGZuIC0gVGhlIGZ1bmN0aW9uIHRvIGFkZC5cbiAqIEBwYXJhbSB0aW1lb3V0SW5NaWxsaXNlY29uZHMgLSBUaGUgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhZGRUb1F1ZXVlKGFwcDogQXBwLCBmbjogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+LCB0aW1lb3V0SW5NaWxsaXNlY29uZHM/OiBudW1iZXIpOiB2b2lkIHtcbiAgdm9pZCBhZGRUb1F1ZXVlQW5kV2FpdChhcHAsIGZuLCB0aW1lb3V0SW5NaWxsaXNlY29uZHMpO1xufVxuXG4vKipcbiAqIEFkZHMgYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkIGFmdGVyIHRoZSBwcmV2aW91cyBmdW5jdGlvbiBjb21wbGV0ZXMgYW5kIHJldHVybnMgYSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZnVuY3Rpb24gY29tcGxldGVzLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gYWRkLlxuICogQHBhcmFtIHRpbWVvdXRJbk1pbGxpc2Vjb25kcyAtIFRoZSB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFkZFRvUXVldWVBbmRXYWl0KGFwcDogQXBwLCBmbjogKCkgPT4gTWF5YmVQcm9taXNlPHZvaWQ+LCB0aW1lb3V0SW5NaWxsaXNlY29uZHM/OiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgREVGQVVMVF9USU1FT1VUX0lOX01JTExJU0VDT05EUyA9IDYwMDAwO1xuICB0aW1lb3V0SW5NaWxsaXNlY29uZHMgPz89IERFRkFVTFRfVElNRU9VVF9JTl9NSUxMSVNFQ09ORFM7XG4gIGNvbnN0IHN0YWNrVHJhY2UgPSBnZXRTdGFja1RyYWNlKCk7XG4gIGNvbnN0IHF1ZXVlID0gZ2V0UXVldWUoYXBwKS52YWx1ZTtcbiAgcXVldWUuaXRlbXMucHVzaCh7IGZuLCBzdGFja1RyYWNlLCB0aW1lb3V0SW5NaWxsaXNlY29uZHMgfSk7XG4gIHF1ZXVlLnByb21pc2UgPSBxdWV1ZS5wcm9taXNlLnRoZW4oKCkgPT4gcHJvY2Vzc05leHRRdWV1ZUl0ZW0oYXBwKSk7XG4gIGF3YWl0IHF1ZXVlLnByb21pc2U7XG59XG5cbi8qKlxuICogRmx1c2hlcyB0aGUgcXVldWU7XG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZsdXNoUXVldWUoYXBwOiBBcHApOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgYWRkVG9RdWV1ZUFuZFdhaXQoYXBwLCBub29wKTtcbn1cblxuZnVuY3Rpb24gZ2V0UXVldWUoYXBwOiBBcHApOiBWYWx1ZVdyYXBwZXI8UXVldWU+IHtcbiAgcmV0dXJuIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZShhcHAsICdxdWV1ZScsIHsgaXRlbXM6IFtdLCBwcm9taXNlOiBQcm9taXNlLnJlc29sdmUoKSB9KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcHJvY2Vzc05leHRRdWV1ZUl0ZW0oYXBwOiBBcHApOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcXVldWUgPSBnZXRRdWV1ZShhcHApLnZhbHVlO1xuICBjb25zdCBpdGVtID0gcXVldWUuaXRlbXNbMF07XG4gIGlmICghaXRlbSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IGFkZEVycm9ySGFuZGxlcigoKSA9PiBydW5XaXRoVGltZW91dChpdGVtLnRpbWVvdXRJbk1pbGxpc2Vjb25kcywgKCkgPT4gaW52b2tlQXN5bmNBbmRMb2cocHJvY2Vzc05leHRRdWV1ZUl0ZW0ubmFtZSwgaXRlbS5mbiwgaXRlbS5zdGFja1RyYWNlKSkpO1xuICBxdWV1ZS5pdGVtcy5zaGlmdCgpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlQSxtQkFHTztBQUNQLG1CQUE4QjtBQUM5QixzQkFBcUI7QUFDckIsaUJBQXlDO0FBQ3pDLG9CQUFrQztBQXRCbEMsSUFBSSxZQUFZLFdBQVcsU0FBUyxLQUFLO0FBQUEsRUFDdkMsT0FBTyxNQUFJO0FBQUEsRUFDWCxPQUFPLENBQUM7QUFBQSxFQUNSLFlBQVk7QUFDZDtBQXVDTyxTQUFTLFdBQVcsS0FBVSxJQUE4Qix1QkFBc0M7QUFDdkcsT0FBSyxrQkFBa0IsS0FBSyxJQUFJLHFCQUFxQjtBQUN2RDtBQVNBLGVBQXNCLGtCQUFrQixLQUFVLElBQThCLHVCQUErQztBQUM3SCxRQUFNLGtDQUFrQztBQUN4Qyw0QkFBMEI7QUFDMUIsUUFBTSxpQkFBYSw0QkFBYztBQUNqQyxRQUFNLFFBQVEsU0FBUyxHQUFHLEVBQUU7QUFDNUIsUUFBTSxNQUFNLEtBQUssRUFBRSxJQUFJLFlBQVksc0JBQXNCLENBQUM7QUFDMUQsUUFBTSxVQUFVLE1BQU0sUUFBUSxLQUFLLE1BQU0scUJBQXFCLEdBQUcsQ0FBQztBQUNsRSxRQUFNLE1BQU07QUFDZDtBQU9BLGVBQXNCLFdBQVcsS0FBeUI7QUFDeEQsUUFBTSxrQkFBa0IsS0FBSyxvQkFBSTtBQUNuQztBQUVBLFNBQVMsU0FBUyxLQUErQjtBQUMvQyxhQUFPLHFDQUF5QixLQUFLLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxTQUFTLFFBQVEsUUFBUSxFQUFFLENBQUM7QUFDekY7QUFFQSxlQUFlLHFCQUFxQixLQUF5QjtBQUMzRCxRQUFNLFFBQVEsU0FBUyxHQUFHLEVBQUU7QUFDNUIsUUFBTSxPQUFPLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE1BQUksQ0FBQyxNQUFNO0FBQ1Q7QUFBQSxFQUNGO0FBRUEsWUFBTSw4QkFBZ0IsVUFBTSw2QkFBZSxLQUFLLHVCQUF1QixVQUFNLGlDQUFrQixxQkFBcUIsTUFBTSxLQUFLLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQztBQUNwSixRQUFNLE1BQU0sTUFBTTtBQUNwQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -63,4 +65,4 @@ function sortReferences(references) {
63
65
  referenceToFileChange,
64
66
  sortReferences
65
67
  });
66
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1JlZmVyZW5jZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gUmVmZXJlbmNlXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgcmVmZXJlbmNlcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFJlZmVyZW5jZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHtcbiAgaXNGcm9udG1hdHRlckxpbmtDYWNoZSxcbiAgaXNSZWZlcmVuY2VDYWNoZVxufSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgQ29udGVudENoYW5nZSxcbiAgRmlsZUNoYW5nZSxcbiAgRnJvbnRtYXR0ZXJDaGFuZ2Vcbn0gZnJvbSAnLi9GaWxlQ2hhbmdlLnRzJztcblxuLyoqXG4qIENvbnZlcnRzIGEgcmVmZXJlbmNlIHRvIGEgZmlsZSBjaGFuZ2UuXG4qXG4qIEBwYXJhbSByZWZlcmVuY2UgLSBUaGUgcmVmZXJlbmNlIHRvIGNvbnZlcnQuXG4qIEBwYXJhbSBuZXdDb250ZW50IC0gVGhlIG5ldyBjb250ZW50IGZvciB0aGUgcmVmZXJlbmNlLlxuKiBAcmV0dXJucyBUaGUgZmlsZSBjaGFuZ2UuXG4qL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZmVyZW5jZVRvRmlsZUNoYW5nZShyZWZlcmVuY2U6IFJlZmVyZW5jZSwgbmV3Q29udGVudDogc3RyaW5nKTogRmlsZUNoYW5nZSB7XG4gIGlmIChpc1JlZmVyZW5jZUNhY2hlKHJlZmVyZW5jZSkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZW5kSW5kZXg6IHJlZmVyZW5jZS5wb3NpdGlvbi5lbmQub2Zmc2V0LFxuICAgICAgbmV3Q29udGVudCxcbiAgICAgIG9sZENvbnRlbnQ6IHJlZmVyZW5jZS5vcmlnaW5hbCxcbiAgICAgIHN0YXJ0SW5kZXg6IHJlZmVyZW5jZS5wb3NpdGlvbi5zdGFydC5vZmZzZXRcbiAgICB9IGFzIENvbnRlbnRDaGFuZ2U7XG4gIH0gZWxzZSBpZiAoaXNGcm9udG1hdHRlckxpbmtDYWNoZShyZWZlcmVuY2UpKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZyb250TWF0dGVyS2V5OiByZWZlcmVuY2Uua2V5LFxuICAgICAgbmV3Q29udGVudCxcbiAgICAgIG9sZENvbnRlbnQ6IHJlZmVyZW5jZS5vcmlnaW5hbFxuICAgIH0gYXMgRnJvbnRtYXR0ZXJDaGFuZ2U7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gbGluayB0eXBlJyk7XG59XG5cbi8qKlxuICogU29ydHMgcmVmZXJlbmNlcyBieSB0aGVpciB0eXBlIGFuZCBwb3NpdGlvbi5cbiAqXG4gKiBAcGFyYW0gcmVmZXJlbmNlcyAtIFRoZSByZWZlcmVuY2VzIHRvIHNvcnQuXG4gKiBAcmV0dXJucyBUaGUgc29ydGVkIHJlZmVyZW5jZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzb3J0UmVmZXJlbmNlcyhyZWZlcmVuY2VzOiBSZWZlcmVuY2VbXSk6IFJlZmVyZW5jZVtdIHtcbiAgcmV0dXJuIHJlZmVyZW5jZXMuc29ydCgoYSwgYikgPT4ge1xuICAgIGlmIChpc0Zyb250bWF0dGVyTGlua0NhY2hlKGEpICYmIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUoYikpIHtcbiAgICAgIHJldHVybiBhLmtleS5sb2NhbGVDb21wYXJlKGIua2V5KTtcbiAgICB9XG5cbiAgICBpZiAoaXNSZWZlcmVuY2VDYWNoZShhKSAmJiBpc1JlZmVyZW5jZUNhY2hlKGIpKSB7XG4gICAgICByZXR1cm4gYS5wb3NpdGlvbi5zdGFydC5vZmZzZXQgLSBiLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldDtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNGcm9udG1hdHRlckxpbmtDYWNoZShhKSA/IDEgOiAtMTtcbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0EsNkJBR087QUFlQSxTQUFTLHNCQUFzQixXQUFzQixZQUFnQztBQUMxRixVQUFJLHlDQUFpQixTQUFTLEdBQUc7QUFDL0IsV0FBTztBQUFBLE1BQ0wsVUFBVSxVQUFVLFNBQVMsSUFBSTtBQUFBLE1BQ2pDO0FBQUEsTUFDQSxZQUFZLFVBQVU7QUFBQSxNQUN0QixZQUFZLFVBQVUsU0FBUyxNQUFNO0FBQUEsSUFDdkM7QUFBQSxFQUNGLGVBQVcsK0NBQXVCLFNBQVMsR0FBRztBQUM1QyxXQUFPO0FBQUEsTUFDTCxnQkFBZ0IsVUFBVTtBQUFBLE1BQzFCO0FBQUEsTUFDQSxZQUFZLFVBQVU7QUFBQSxJQUN4QjtBQUFBLEVBQ0Y7QUFFQSxRQUFNLElBQUksTUFBTSxtQkFBbUI7QUFDckM7QUFRTyxTQUFTLGVBQWUsWUFBc0M7QUFDbkUsU0FBTyxXQUFXLEtBQUssQ0FBQyxHQUFHLE1BQU07QUFDL0IsWUFBSSwrQ0FBdUIsQ0FBQyxTQUFLLCtDQUF1QixDQUFDLEdBQUc7QUFDMUQsYUFBTyxFQUFFLElBQUksY0FBYyxFQUFFLEdBQUc7QUFBQSxJQUNsQztBQUVBLFlBQUkseUNBQWlCLENBQUMsU0FBSyx5Q0FBaUIsQ0FBQyxHQUFHO0FBQzlDLGFBQU8sRUFBRSxTQUFTLE1BQU0sU0FBUyxFQUFFLFNBQVMsTUFBTTtBQUFBLElBQ3BEO0FBRUEsZUFBTywrQ0FBdUIsQ0FBQyxJQUFJLElBQUk7QUFBQSxFQUN6QyxDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
68
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1JlZmVyZW5jZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gUmVmZXJlbmNlXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgcmVmZXJlbmNlcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFJlZmVyZW5jZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHtcbiAgaXNGcm9udG1hdHRlckxpbmtDYWNoZSxcbiAgaXNSZWZlcmVuY2VDYWNoZVxufSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgQ29udGVudENoYW5nZSxcbiAgRmlsZUNoYW5nZSxcbiAgRnJvbnRtYXR0ZXJDaGFuZ2Vcbn0gZnJvbSAnLi9GaWxlQ2hhbmdlLnRzJztcblxuLyoqXG4qIENvbnZlcnRzIGEgcmVmZXJlbmNlIHRvIGEgZmlsZSBjaGFuZ2UuXG4qXG4qIEBwYXJhbSByZWZlcmVuY2UgLSBUaGUgcmVmZXJlbmNlIHRvIGNvbnZlcnQuXG4qIEBwYXJhbSBuZXdDb250ZW50IC0gVGhlIG5ldyBjb250ZW50IGZvciB0aGUgcmVmZXJlbmNlLlxuKiBAcmV0dXJucyBUaGUgZmlsZSBjaGFuZ2UuXG4qL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZmVyZW5jZVRvRmlsZUNoYW5nZShyZWZlcmVuY2U6IFJlZmVyZW5jZSwgbmV3Q29udGVudDogc3RyaW5nKTogRmlsZUNoYW5nZSB7XG4gIGlmIChpc1JlZmVyZW5jZUNhY2hlKHJlZmVyZW5jZSkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZW5kSW5kZXg6IHJlZmVyZW5jZS5wb3NpdGlvbi5lbmQub2Zmc2V0LFxuICAgICAgbmV3Q29udGVudCxcbiAgICAgIG9sZENvbnRlbnQ6IHJlZmVyZW5jZS5vcmlnaW5hbCxcbiAgICAgIHN0YXJ0SW5kZXg6IHJlZmVyZW5jZS5wb3NpdGlvbi5zdGFydC5vZmZzZXRcbiAgICB9IGFzIENvbnRlbnRDaGFuZ2U7XG4gIH0gZWxzZSBpZiAoaXNGcm9udG1hdHRlckxpbmtDYWNoZShyZWZlcmVuY2UpKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZyb250TWF0dGVyS2V5OiByZWZlcmVuY2Uua2V5LFxuICAgICAgbmV3Q29udGVudCxcbiAgICAgIG9sZENvbnRlbnQ6IHJlZmVyZW5jZS5vcmlnaW5hbFxuICAgIH0gYXMgRnJvbnRtYXR0ZXJDaGFuZ2U7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gbGluayB0eXBlJyk7XG59XG5cbi8qKlxuICogU29ydHMgcmVmZXJlbmNlcyBieSB0aGVpciB0eXBlIGFuZCBwb3NpdGlvbi5cbiAqXG4gKiBAcGFyYW0gcmVmZXJlbmNlcyAtIFRoZSByZWZlcmVuY2VzIHRvIHNvcnQuXG4gKiBAcmV0dXJucyBUaGUgc29ydGVkIHJlZmVyZW5jZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzb3J0UmVmZXJlbmNlcyhyZWZlcmVuY2VzOiBSZWZlcmVuY2VbXSk6IFJlZmVyZW5jZVtdIHtcbiAgcmV0dXJuIHJlZmVyZW5jZXMuc29ydCgoYSwgYikgPT4ge1xuICAgIGlmIChpc0Zyb250bWF0dGVyTGlua0NhY2hlKGEpICYmIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUoYikpIHtcbiAgICAgIHJldHVybiBhLmtleS5sb2NhbGVDb21wYXJlKGIua2V5KTtcbiAgICB9XG5cbiAgICBpZiAoaXNSZWZlcmVuY2VDYWNoZShhKSAmJiBpc1JlZmVyZW5jZUNhY2hlKGIpKSB7XG4gICAgICByZXR1cm4gYS5wb3NpdGlvbi5zdGFydC5vZmZzZXQgLSBiLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldDtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNGcm9udG1hdHRlckxpbmtDYWNoZShhKSA/IDEgOiAtMTtcbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQSw2QkFHTztBQWVBLFNBQVMsc0JBQXNCLFdBQXNCLFlBQWdDO0FBQzFGLFVBQUkseUNBQWlCLFNBQVMsR0FBRztBQUMvQixXQUFPO0FBQUEsTUFDTCxVQUFVLFVBQVUsU0FBUyxJQUFJO0FBQUEsTUFDakM7QUFBQSxNQUNBLFlBQVksVUFBVTtBQUFBLE1BQ3RCLFlBQVksVUFBVSxTQUFTLE1BQU07QUFBQSxJQUN2QztBQUFBLEVBQ0YsZUFBVywrQ0FBdUIsU0FBUyxHQUFHO0FBQzVDLFdBQU87QUFBQSxNQUNMLGdCQUFnQixVQUFVO0FBQUEsTUFDMUI7QUFBQSxNQUNBLFlBQVksVUFBVTtBQUFBLElBQ3hCO0FBQUEsRUFDRjtBQUVBLFFBQU0sSUFBSSxNQUFNLG1CQUFtQjtBQUNyQztBQVFPLFNBQVMsZUFBZSxZQUFzQztBQUNuRSxTQUFPLFdBQVcsS0FBSyxDQUFDLEdBQUcsTUFBTTtBQUMvQixZQUFJLCtDQUF1QixDQUFDLFNBQUssK0NBQXVCLENBQUMsR0FBRztBQUMxRCxhQUFPLEVBQUUsSUFBSSxjQUFjLEVBQUUsR0FBRztBQUFBLElBQ2xDO0FBRUEsWUFBSSx5Q0FBaUIsQ0FBQyxTQUFLLHlDQUFpQixDQUFDLEdBQUc7QUFDOUMsYUFBTyxFQUFFLFNBQVMsTUFBTSxTQUFTLEVBQUUsU0FBUyxNQUFNO0FBQUEsSUFDcEQ7QUFFQSxlQUFPLCtDQUF1QixDQUFDLElBQUksSUFBSTtBQUFBLEVBQ3pDLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -355,4 +357,4 @@ function shouldInvokeHandler(app, pluginId) {
355
357
  0 && (module.exports = {
356
358
  registerRenameDeleteHandlers
357
359
  });
358
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1JlbmFtZURlbGV0ZUhhbmRsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gUmVuYW1lRGVsZXRlSGFuZGxlclxuICogQ29udGFpbnMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGhhbmRsaW5nIHJlbmFtZSBhbmQgZGVsZXRlIGV2ZW50cyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIENhY2hlZE1ldGFkYXRhLFxuICBQbHVnaW4sXG4gIFJlZmVyZW5jZSxcbiAgVEFic3RyYWN0RmlsZVxufSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgdHlwZSB7IEN1c3RvbUFycmF5RGljdCB9IGZyb20gJ29ic2lkaWFuLXR5cGluZ3MnO1xuaW1wb3J0IHR5cGUgeyBDYW52YXNEYXRhIH0gZnJvbSAnb2JzaWRpYW4vY2FudmFzLmpzJztcblxuaW1wb3J0IHsgYXJvdW5kIH0gZnJvbSAnbW9ua2V5LWFyb3VuZCc7XG5pbXBvcnQge1xuICBBcHAsXG4gIFRGaWxlLFxuICBWYXVsdFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7IHByaW50RXJyb3IgfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBub29wQXN5bmMgfSBmcm9tICcuLi9GdW5jdGlvbi50cyc7XG5pbXBvcnQgeyB0b0pzb24gfSBmcm9tICcuLi9PYmplY3QudHMnO1xuaW1wb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGpvaW4sXG4gIG1ha2VGaWxlTmFtZSxcbiAgcmVsYXRpdmVcbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBnZXRPYnNpZGlhbkRldlV0aWxzU3RhdGUgfSBmcm9tICcuL0FwcC50cyc7XG5pbXBvcnQge1xuICBnZXRBdHRhY2htZW50Rm9sZGVyUGF0aCxcbiAgaGFzT3duQXR0YWNobWVudEZvbGRlclxufSBmcm9tICcuL0F0dGFjaG1lbnRQYXRoLnRzJztcbmltcG9ydCB7XG4gIGdldEZpbGUsXG4gIGdldEZpbGVPck51bGwsXG4gIGdldEZvbGRlck9yTnVsbCxcbiAgaXNDYW52YXNGaWxlLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlLFxuICBpc05vdGVcbn0gZnJvbSAnLi9GaWxlU3lzdGVtLnRzJztcbmltcG9ydCB7XG4gIGVkaXRMaW5rcyxcbiAgZXh0cmFjdExpbmtGaWxlLFxuICB1cGRhdGVMaW5rLFxuICB1cGRhdGVMaW5rc0luRmlsZVxufSBmcm9tICcuL0xpbmsudHMnO1xuaW1wb3J0IHtcbiAgZ2V0QWxsTGlua3MsXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVPclBhdGgsXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlLFxuICBnZXRCYWNrbGlua3NNYXAsXG4gIGdldENhY2hlU2FmZVxufSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuaW1wb3J0IHsgYWRkVG9RdWV1ZSB9IGZyb20gJy4vUXVldWUudHMnO1xuaW1wb3J0IHtcbiAgZGVsZXRlRW1wdHlGb2xkZXJIaWVyYXJjaHksXG4gIGRlbGV0ZVNhZmUsXG4gIGdldFNhZmVSZW5hbWVQYXRoLFxuICBwcm9jZXNzLFxuICByZW5hbWVTYWZlXG59IGZyb20gJy4vVmF1bHQudHMnO1xuXG5jb25zdCBkZWxldGVkTWV0YWRhdGFDYWNoZU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBDYWNoZWRNZXRhZGF0YT4oKTtcbmNvbnN0IGhhbmRsZWRSZW5hbWVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbi8qKlxuICogU2V0dGluZ3MgZm9yIHRoZSByZW5hbWUvZGVsZXRlIGhhbmRsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGVsZXRlIGNvbmZsaWN0aW5nIGF0dGFjaG1lbnRzLlxuICAgKi9cbiAgc2hvdWxkRGVsZXRlQ29uZmxpY3RpbmdBdHRhY2htZW50czogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkZWxldGUgZW1wdHkgZm9sZGVycy5cbiAgICovXG4gIHNob3VsZERlbGV0ZUVtcHR5Rm9sZGVyczogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkZWxldGUgb3JwaGFuIGF0dGFjaG1lbnRzIGFmdGVyIGEgZGVsZXRlLlxuICAgKi9cbiAgc2hvdWxkRGVsZXRlT3JwaGFuQXR0YWNobWVudHM6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcmVuYW1lIGF0dGFjaG1lbnQgZmlsZXMgd2hlbiBhIG5vdGUgaXMgcmVuYW1lZC5cbiAgICovXG4gIHNob3VsZFJlbmFtZUF0dGFjaG1lbnRGaWxlczogYm9vbGVhbjtcblxuICAvKipcbiAgICAqIFdoZXRoZXIgdG8gcmVuYW1lIGF0dGFjaG1lbnQgZm9sZGVyIHdoZW4gYSBub3RlIGlzIHJlbmFtZWQuXG4gICAgKi9cbiAgc2hvdWxkUmVuYW1lQXR0YWNobWVudEZvbGRlcjogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgZmlsZW5hbWUgYWxpYXNlcyB3aGVuIGEgbm90ZSBpcyByZW5hbWVkLlxuICAgKi9cbiAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhc2VzOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBsaW5rcyB3aGVuIGEgbm90ZSBvciBhdHRhY2htZW50IGlzIHJlbmFtZWQuXG4gICAqL1xuICBzaG91bGRVcGRhdGVMaW5rczogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgdGhlIHJlbmFtZS9kZWxldGUgaGFuZGxlcnMuXG4gKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBzZXR0aW5nc0J1aWxkZXIgLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgc2V0dGluZ3MgZm9yIHRoZSByZW5hbWUgZGVsZXRlIGhhbmRsZXIuXG4gKiBAcmV0dXJucyB2b2lkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclJlbmFtZURlbGV0ZUhhbmRsZXJzKHBsdWdpbjogUGx1Z2luLCBzZXR0aW5nc0J1aWxkZXI6ICgpID0+IFBhcnRpYWw8UmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzPik6IHZvaWQge1xuICBjb25zdCByZW5hbWVEZWxldGVIYW5kbGVyc01hcCA9IGdldFJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwKHBsdWdpbi5hcHApO1xuICBjb25zdCBwbHVnaW5JZCA9IHBsdWdpbi5tYW5pZmVzdC5pZDtcblxuICByZW5hbWVEZWxldGVIYW5kbGVyc01hcC5zZXQocGx1Z2luSWQsIHNldHRpbmdzQnVpbGRlcik7XG4gIGxvZ1JlZ2lzdGVyZWRIYW5kbGVycyhwbHVnaW4uYXBwKTtcblxuICBwbHVnaW4ucmVnaXN0ZXIoKCkgPT4ge1xuICAgIHJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwLmRlbGV0ZShwbHVnaW5JZCk7XG4gICAgbG9nUmVnaXN0ZXJlZEhhbmRsZXJzKHBsdWdpbi5hcHApO1xuICB9KTtcblxuICBjb25zdCBhcHAgPSBwbHVnaW4uYXBwO1xuICBwbHVnaW4ucmVnaXN0ZXJFdmVudChcbiAgICBhcHAudmF1bHQub24oJ2RlbGV0ZScsIChmaWxlKSA9PiB7XG4gICAgICBpZiAoIXNob3VsZEludm9rZUhhbmRsZXIoYXBwLCBwbHVnaW5JZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgcGF0aCA9IGZpbGUucGF0aDtcbiAgICAgIGFkZFRvUXVldWUoYXBwLCAoKSA9PiBoYW5kbGVEZWxldGUoYXBwLCBwYXRoKSk7XG4gICAgfSlcbiAgKTtcblxuICBwbHVnaW4ucmVnaXN0ZXJFdmVudChcbiAgICBhcHAudmF1bHQub24oJ3JlbmFtZScsIChmaWxlLCBvbGRQYXRoKSA9PiB7XG4gICAgICBpZiAoIXNob3VsZEludm9rZUhhbmRsZXIoYXBwLCBwbHVnaW5JZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKCFpc0ZpbGUoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGF0aCA9IGZpbGUucGF0aDtcbiAgICAgIGhhbmRsZVJlbmFtZShhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICAgIH0pXG4gICk7XG5cbiAgcGx1Z2luLnJlZ2lzdGVyRXZlbnQoXG4gICAgYXBwLm1ldGFkYXRhQ2FjaGUub24oJ2RlbGV0ZWQnLCAoZmlsZSwgcHJldkNhY2hlKSA9PiB7XG4gICAgICBoYW5kbGVNZXRhZGF0YURlbGV0ZWQoYXBwLCBmaWxlLCBwcmV2Q2FjaGUpO1xuICAgIH0pXG4gICk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZpbGxSZW5hbWVNYXAoYXBwOiBBcHAsIG9sZFBhdGg6IHN0cmluZywgbmV3UGF0aDogc3RyaW5nLCByZW5hbWVNYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgcmVuYW1lTWFwLnNldChvbGRQYXRoLCBuZXdQYXRoKTtcblxuICBpZiAoIWlzTm90ZShvbGRQYXRoKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHNldHRpbmdzID0gZ2V0U2V0dGluZ3MoYXBwKTtcblxuICBjb25zdCBvbGRBdHRhY2htZW50Rm9sZGVyUGF0aCA9IGF3YWl0IGdldEF0dGFjaG1lbnRGb2xkZXJQYXRoKGFwcCwgb2xkUGF0aCk7XG4gIGNvbnN0IG5ld0F0dGFjaG1lbnRGb2xkZXJQYXRoID0gc2V0dGluZ3Muc2hvdWxkUmVuYW1lQXR0YWNobWVudEZvbGRlclxuICAgID8gYXdhaXQgZ2V0QXR0YWNobWVudEZvbGRlclBhdGgoYXBwLCBuZXdQYXRoKVxuICAgIDogb2xkQXR0YWNobWVudEZvbGRlclBhdGg7XG5cbiAgY29uc3Qgb2xkQXR0YWNobWVudEZvbGRlciA9IGdldEZvbGRlck9yTnVsbChhcHAsIG9sZEF0dGFjaG1lbnRGb2xkZXJQYXRoKTtcblxuICBpZiAoIW9sZEF0dGFjaG1lbnRGb2xkZXIpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBpZiAob2xkQXR0YWNobWVudEZvbGRlclBhdGggPT09IG5ld0F0dGFjaG1lbnRGb2xkZXJQYXRoICYmICFzZXR0aW5ncy5zaG91bGRSZW5hbWVBdHRhY2htZW50RmlsZXMpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBvbGRBdHRhY2htZW50RmlsZXM6IFRGaWxlW10gPSBbXTtcblxuICBpZiAoIShhd2FpdCBoYXNPd25BdHRhY2htZW50Rm9sZGVyKGFwcCwgb2xkUGF0aCkpKSB7XG4gICAgY29uc3Qgb2xkQ2FjaGUgPSBhd2FpdCBnZXRDYWNoZVNhZmUoYXBwLCBuZXdQYXRoKTtcbiAgICBpZiAoIW9sZENhY2hlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAoY29uc3Qgb2xkTGluayBvZiBnZXRBbGxMaW5rcyhvbGRDYWNoZSkpIHtcbiAgICAgIGNvbnN0IG9sZEF0dGFjaG1lbnRGaWxlID0gZXh0cmFjdExpbmtGaWxlKGFwcCwgb2xkTGluaywgb2xkUGF0aCk7XG4gICAgICBpZiAoIW9sZEF0dGFjaG1lbnRGaWxlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAob2xkQXR0YWNobWVudEZpbGUucGF0aC5zdGFydHNXaXRoKG9sZEF0dGFjaG1lbnRGb2xkZXJQYXRoKSkge1xuICAgICAgICBjb25zdCBvbGRBdHRhY2htZW50QmFja2xpbmtzID0gYXdhaXQgZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUoYXBwLCBvbGRBdHRhY2htZW50RmlsZSk7XG4gICAgICAgIGlmIChvbGRBdHRhY2htZW50QmFja2xpbmtzLmtleXMoKS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICBvbGRBdHRhY2htZW50RmlsZXMucHVzaChvbGRBdHRhY2htZW50RmlsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgVmF1bHQucmVjdXJzZUNoaWxkcmVuKG9sZEF0dGFjaG1lbnRGb2xkZXIsIChvbGRBdHRhY2htZW50RmlsZSkgPT4ge1xuICAgICAgaWYgKGlzRmlsZShvbGRBdHRhY2htZW50RmlsZSkpIHtcbiAgICAgICAgb2xkQXR0YWNobWVudEZpbGVzLnB1c2gob2xkQXR0YWNobWVudEZpbGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qgb2xkQmFzZW5hbWUgPSBiYXNlbmFtZShvbGRQYXRoLCBleHRuYW1lKG9sZFBhdGgpKTtcbiAgY29uc3QgbmV3QmFzZW5hbWUgPSBiYXNlbmFtZShuZXdQYXRoLCBleHRuYW1lKG5ld1BhdGgpKTtcblxuICBmb3IgKGNvbnN0IG9sZEF0dGFjaG1lbnRGaWxlIG9mIG9sZEF0dGFjaG1lbnRGaWxlcykge1xuICAgIGlmIChpc05vdGUob2xkQXR0YWNobWVudEZpbGUpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgY29uc3QgcmVsYXRpdmVQYXRoID0gcmVsYXRpdmUob2xkQXR0YWNobWVudEZvbGRlclBhdGgsIG9sZEF0dGFjaG1lbnRGaWxlLnBhdGgpO1xuICAgIGNvbnN0IG5ld0RpciA9IGpvaW4obmV3QXR0YWNobWVudEZvbGRlclBhdGgsIGRpcm5hbWUocmVsYXRpdmVQYXRoKSk7XG4gICAgY29uc3QgbmV3Q2hpbGRCYXNlbmFtZSA9IHNldHRpbmdzLnNob3VsZFJlbmFtZUF0dGFjaG1lbnRGaWxlc1xuICAgICAgPyBvbGRBdHRhY2htZW50RmlsZS5iYXNlbmFtZS5yZXBsYWNlQWxsKG9sZEJhc2VuYW1lLCBuZXdCYXNlbmFtZSlcbiAgICAgIDogb2xkQXR0YWNobWVudEZpbGUuYmFzZW5hbWU7XG4gICAgbGV0IG5ld0NoaWxkUGF0aCA9IGpvaW4obmV3RGlyLCBtYWtlRmlsZU5hbWUobmV3Q2hpbGRCYXNlbmFtZSwgb2xkQXR0YWNobWVudEZpbGUuZXh0ZW5zaW9uKSk7XG5cbiAgICBpZiAob2xkQXR0YWNobWVudEZpbGUucGF0aCA9PT0gbmV3Q2hpbGRQYXRoKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoc2V0dGluZ3Muc2hvdWxkRGVsZXRlQ29uZmxpY3RpbmdBdHRhY2htZW50cykge1xuICAgICAgY29uc3QgbmV3Q2hpbGRGaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIG5ld0NoaWxkUGF0aCk7XG4gICAgICBpZiAobmV3Q2hpbGRGaWxlKSB7XG4gICAgICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci50cmFzaEZpbGUobmV3Q2hpbGRGaWxlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbmV3Q2hpbGRQYXRoID0gYXBwLnZhdWx0LmdldEF2YWlsYWJsZVBhdGgoam9pbihuZXdEaXIsIG5ld0NoaWxkQmFzZW5hbWUpLCBvbGRBdHRhY2htZW50RmlsZS5leHRlbnNpb24pO1xuICAgIH1cbiAgICByZW5hbWVNYXAuc2V0KG9sZEF0dGFjaG1lbnRGaWxlLnBhdGgsIG5ld0NoaWxkUGF0aCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwOiBBcHApOiBNYXA8c3RyaW5nLCAoKSA9PiBQYXJ0aWFsPFJlbmFtZURlbGV0ZUhhbmRsZXJTZXR0aW5ncz4+IHtcbiAgcmV0dXJuIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZShhcHAsICdyZW5hbWVEZWxldGVIYW5kbGVyc01hcCcsIG5ldyBNYXA8c3RyaW5nLCAoKSA9PiBQYXJ0aWFsPFJlbmFtZURlbGV0ZUhhbmRsZXJTZXR0aW5ncz4+KCkpLnZhbHVlO1xufVxuXG5mdW5jdGlvbiBnZXRTZXR0aW5ncyhhcHA6IEFwcCk6IFBhcnRpYWw8UmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzPiB7XG4gIGNvbnN0IHJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwID0gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwKTtcbiAgY29uc3Qgc2V0dGluZ3NCdWlsZGVycyA9IEFycmF5LmZyb20ocmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAudmFsdWVzKCkpLnJldmVyc2UoKTtcblxuICBjb25zdCBzZXR0aW5nczogUGFydGlhbDxSZW5hbWVEZWxldGVIYW5kbGVyU2V0dGluZ3M+ID0ge307XG4gIGZvciAoY29uc3Qgc2V0dGluZ3NCdWlsZGVyIG9mIHNldHRpbmdzQnVpbGRlcnMpIHtcbiAgICBjb25zdCBuZXdTZXR0aW5ncyA9IHNldHRpbmdzQnVpbGRlcigpO1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG5ld1NldHRpbmdzKSBhcyBba2V5b2YgUmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzLCBib29sZWFuXVtdKSB7XG4gICAgICBzZXR0aW5nc1trZXldIHx8PSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc2V0dGluZ3M7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnNvbGUuZGVidWcoYEhhbmRsZSBEZWxldGUgJHtwYXRofWApO1xuICBpZiAoIWlzTm90ZShwYXRoKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHNldHRpbmdzID0gZ2V0U2V0dGluZ3MoYXBwKTtcbiAgaWYgKCFzZXR0aW5ncy5zaG91bGREZWxldGVPcnBoYW5BdHRhY2htZW50cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGNhY2hlID0gZGVsZXRlZE1ldGFkYXRhQ2FjaGVNYXAuZ2V0KHBhdGgpO1xuICBkZWxldGVkTWV0YWRhdGFDYWNoZU1hcC5kZWxldGUocGF0aCk7XG4gIGlmIChjYWNoZSkge1xuICAgIGNvbnN0IGxpbmtzID0gZ2V0QWxsTGlua3MoY2FjaGUpO1xuXG4gICAgZm9yIChjb25zdCBsaW5rIG9mIGxpbmtzKSB7XG4gICAgICBjb25zdCBhdHRhY2htZW50RmlsZSA9IGV4dHJhY3RMaW5rRmlsZShhcHAsIGxpbmssIHBhdGgpO1xuICAgICAgaWYgKCFhdHRhY2htZW50RmlsZSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzTm90ZShhdHRhY2htZW50RmlsZSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGRlbGV0ZVNhZmUoYXBwLCBhdHRhY2htZW50RmlsZSwgcGF0aCwgc2V0dGluZ3Muc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBhdHRhY2htZW50Rm9sZGVyUGF0aCA9IGF3YWl0IGdldEF0dGFjaG1lbnRGb2xkZXJQYXRoKGFwcCwgcGF0aCk7XG4gIGNvbnN0IGF0dGFjaG1lbnRGb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBhdHRhY2htZW50Rm9sZGVyUGF0aCk7XG5cbiAgaWYgKCFhdHRhY2htZW50Rm9sZGVyKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKCEoYXdhaXQgaGFzT3duQXR0YWNobWVudEZvbGRlcihhcHAsIHBhdGgpKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IGRlbGV0ZVNhZmUoYXBwLCBhdHRhY2htZW50Rm9sZGVyLCBwYXRoLCBmYWxzZSwgc2V0dGluZ3Muc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlTWV0YWRhdGFEZWxldGVkKGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlLCBwcmV2Q2FjaGU6IENhY2hlZE1ldGFkYXRhIHwgbnVsbCk6IHZvaWQge1xuICBjb25zdCBzZXR0aW5ncyA9IGdldFNldHRpbmdzKGFwcCk7XG4gIGlmICghc2V0dGluZ3Muc2hvdWxkRGVsZXRlT3JwaGFuQXR0YWNobWVudHMpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKGlzTWFya2Rvd25GaWxlKGZpbGUpICYmIHByZXZDYWNoZSkge1xuICAgIGRlbGV0ZWRNZXRhZGF0YUNhY2hlTWFwLnNldChmaWxlLnBhdGgsIHByZXZDYWNoZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaGFuZGxlUmVuYW1lKGFwcDogQXBwLCBvbGRQYXRoOiBzdHJpbmcsIG5ld1BhdGg6IHN0cmluZyk6IHZvaWQge1xuICBjb25zdCBrZXkgPSBtYWtlS2V5KG9sZFBhdGgsIG5ld1BhdGgpO1xuICBjb25zb2xlLmRlYnVnKGBIYW5kbGUgUmVuYW1lICR7a2V5fWApO1xuICBpZiAoaGFuZGxlZFJlbmFtZXMuaGFzKGtleSkpIHtcbiAgICBoYW5kbGVkUmVuYW1lcy5kZWxldGUoa2V5KTtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBiYWNrbGlua3MgPSBnZXRCYWNrbGlua3NGb3JGaWxlT3JQYXRoKGFwcCwgb2xkUGF0aCk7XG4gIGFkZFRvUXVldWUoYXBwLCAoKSA9PiBoYW5kbGVSZW5hbWVBc3luYyhhcHAsIG9sZFBhdGgsIG5ld1BhdGgsIGJhY2tsaW5rcykpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVSZW5hbWVBc3luYyhhcHA6IEFwcCwgb2xkUGF0aDogc3RyaW5nLCBuZXdQYXRoOiBzdHJpbmcsIGJhY2tsaW5rczogQ3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZT4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKGFwcC52YXVsdC5hZGFwdGVyLmluc2Vuc2l0aXZlICYmIG9sZFBhdGgudG9Mb3dlckNhc2UoKSA9PT0gbmV3UGF0aC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgY29uc3QgdGVtcFBhdGggPSBqb2luKGRpcm5hbWUobmV3UGF0aCksICdfX3RlbXBfXycgKyBiYXNlbmFtZShuZXdQYXRoKSk7XG4gICAgYXdhaXQgcmVuYW1lSGFuZGxlZChhcHAsIG5ld1BhdGgsIHRlbXBQYXRoKTtcbiAgICBhd2FpdCBoYW5kbGVSZW5hbWVBc3luYyhhcHAsIG9sZFBhdGgsIHRlbXBQYXRoLCBiYWNrbGlua3MpO1xuICAgIGF3YWl0IGFwcC52YXVsdC5yZW5hbWUoZ2V0RmlsZShhcHAsIHRlbXBQYXRoKSwgbmV3UGF0aCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcmVzdG9yZVVwZGF0ZUFsbExpbmtzID0gYXJvdW5kKGFwcC5maWxlTWFuYWdlciwge1xuICAgIHVwZGF0ZUFsbExpbmtzOiAoKSA9PiBub29wQXN5bmNcbiAgfSk7XG4gIHRyeSB7XG4gICAgY29uc3QgcmVuYW1lTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcbiAgICBhd2FpdCBmaWxsUmVuYW1lTWFwKGFwcCwgb2xkUGF0aCwgbmV3UGF0aCwgcmVuYW1lTWFwKTtcblxuICAgIGNvbnN0IGJhY2tsaW5rc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+PigpO1xuICAgIGluaXRCYWNrbGlua3NNYXAoYmFja2xpbmtzLmRhdGEsIHJlbmFtZU1hcCwgYmFja2xpbmtzTWFwLCBvbGRQYXRoKTtcblxuICAgIGZvciAoY29uc3QgYXR0YWNobWVudE9sZFBhdGggb2YgcmVuYW1lTWFwLmtleXMoKSkge1xuICAgICAgaWYgKGF0dGFjaG1lbnRPbGRQYXRoID09PSBvbGRQYXRoKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgY3VycmVudEJhY2tsaW5rc01hcCA9IGF3YWl0IGdldEJhY2tsaW5rc01hcChhcHAsIFthdHRhY2htZW50T2xkUGF0aF0pO1xuICAgICAgaW5pdEJhY2tsaW5rc01hcChjdXJyZW50QmFja2xpbmtzTWFwLCByZW5hbWVNYXAsIGJhY2tsaW5rc01hcCwgYXR0YWNobWVudE9sZFBhdGgpO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmVudEZvbGRlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGZvciAoY29uc3QgW29sZFJlbGF0ZWRQYXRoLCBuZXdSZWxhdGVkUGF0aF0gb2YgcmVuYW1lTWFwLmVudHJpZXMoKSkge1xuICAgICAgaWYgKG9sZFJlbGF0ZWRQYXRoID09PSBvbGRQYXRoKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgZml4ZWROZXdSZWxhdGVkUGF0aCA9IGF3YWl0IHJlbmFtZUhhbmRsZWQoYXBwLCBvbGRSZWxhdGVkUGF0aCwgbmV3UmVsYXRlZFBhdGgpO1xuICAgICAgcmVuYW1lTWFwLnNldChvbGRSZWxhdGVkUGF0aCwgZml4ZWROZXdSZWxhdGVkUGF0aCk7XG4gICAgICBwYXJlbnRGb2xkZXJzLmFkZChkaXJuYW1lKG9sZFJlbGF0ZWRQYXRoKSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2V0dGluZ3MgPSBnZXRTZXR0aW5ncyhhcHApO1xuICAgIGlmIChzZXR0aW5ncy5zaG91bGREZWxldGVFbXB0eUZvbGRlcnMpIHtcbiAgICAgIGZvciAoY29uc3QgcGFyZW50Rm9sZGVyIG9mIHBhcmVudEZvbGRlcnMpIHtcbiAgICAgICAgYXdhaXQgZGVsZXRlRW1wdHlGb2xkZXJIaWVyYXJjaHkoYXBwLCBwYXJlbnRGb2xkZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvciAoY29uc3QgW25ld0JhY2tsaW5rUGF0aCwgbGlua0pzb25Ub1BhdGhNYXBdIG9mIGJhY2tsaW5rc01hcC5lbnRyaWVzKCkpIHtcbiAgICAgIGF3YWl0IGVkaXRMaW5rcyhhcHAsIG5ld0JhY2tsaW5rUGF0aCwgKGxpbmspID0+IHtcbiAgICAgICAgY29uc3Qgb2xkUmVsYXRlZFBhdGggPSBsaW5rSnNvblRvUGF0aE1hcC5nZXQodG9Kc29uKGxpbmspKTtcbiAgICAgICAgaWYgKCFvbGRSZWxhdGVkUGF0aCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1JlbGF0ZWRQYXRoID0gcmVuYW1lTWFwLmdldChvbGRSZWxhdGVkUGF0aCk7XG4gICAgICAgIGlmICghbmV3UmVsYXRlZFBhdGgpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdXBkYXRlTGluayh7XG4gICAgICAgICAgYXBwOiBhcHAsXG4gICAgICAgICAgbGluayxcbiAgICAgICAgICBvbGRQYXRoT3JGaWxlOiBvbGRSZWxhdGVkUGF0aCxcbiAgICAgICAgICBwYXRoT3JGaWxlOiBuZXdSZWxhdGVkUGF0aCxcbiAgICAgICAgICByZW5hbWVNYXAsXG4gICAgICAgICAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhczogc2V0dGluZ3Muc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhc2VzLFxuICAgICAgICAgIHNvdXJjZVBhdGhPckZpbGU6IG5ld0JhY2tsaW5rUGF0aFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChpc0NhbnZhc0ZpbGUobmV3UGF0aCkpIHtcbiAgICAgIGF3YWl0IHByb2Nlc3MoYXBwLCBuZXdQYXRoLCAoY29udGVudCkgPT4ge1xuICAgICAgICBsZXQgY2FudmFzRGF0YTogQ2FudmFzRGF0YTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjYW52YXNEYXRhID0gSlNPTi5wYXJzZShjb250ZW50KSBhcyBDYW52YXNEYXRhO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgcHJpbnRFcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBwYXJzZSBjYW52YXMgZGF0YSBmb3IgJHtuZXdQYXRofWAsIHsgY2F1c2U6IGUgfSkpO1xuICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjYW52YXNEYXRhLm5vZGVzKSB7XG4gICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gJ2ZpbGUnKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgbmV3UGF0aCA9IHJlbmFtZU1hcC5nZXQobm9kZS5maWxlKTtcbiAgICAgICAgICBpZiAoIW5ld1BhdGgpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBub2RlLmZpbGUgPSBuZXdQYXRoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0b0pzb24oY2FudmFzRGF0YSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGlzTWFya2Rvd25GaWxlKG5ld1BhdGgpKSB7XG4gICAgICBhd2FpdCB1cGRhdGVMaW5rc0luRmlsZSh7XG4gICAgICAgIGFwcDogYXBwLFxuICAgICAgICBvbGRQYXRoT3JGaWxlOiBvbGRQYXRoLFxuICAgICAgICBwYXRoT3JGaWxlOiBuZXdQYXRoLFxuICAgICAgICByZW5hbWVNYXAsXG4gICAgICAgIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXM6IHNldHRpbmdzLnNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNlc1xuICAgICAgfSk7XG4gICAgfVxuICB9IGZpbmFsbHkge1xuICAgIHJlc3RvcmVVcGRhdGVBbGxMaW5rcygpO1xuICAgIGNvbnN0IG9ycGhhbktleXMgPSBBcnJheS5mcm9tKGhhbmRsZWRSZW5hbWVzKTtcbiAgICBhZGRUb1F1ZXVlKGFwcCwgKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBrZXkgb2Ygb3JwaGFuS2V5cykge1xuICAgICAgICBoYW5kbGVkUmVuYW1lcy5kZWxldGUoa2V5KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpbml0QmFja2xpbmtzTWFwKGN1cnJlbnRCYWNrbGlua3NNYXA6IE1hcDxzdHJpbmcsIFJlZmVyZW5jZVtdPiwgcmVuYW1lTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+LCBiYWNrbGlua3NNYXA6IE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcsIHN0cmluZz4+LCBwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgZm9yIChjb25zdCBbYmFja2xpbmtQYXRoLCBsaW5rc10gb2YgY3VycmVudEJhY2tsaW5rc01hcC5lbnRyaWVzKCkpIHtcbiAgICBjb25zdCBuZXdCYWNrbGlua1BhdGggPSByZW5hbWVNYXAuZ2V0KGJhY2tsaW5rUGF0aCkgPz8gYmFja2xpbmtQYXRoO1xuICAgIGNvbnN0IGxpbmtKc29uVG9QYXRoTWFwID0gYmFja2xpbmtzTWFwLmdldChuZXdCYWNrbGlua1BhdGgpID8/IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgYmFja2xpbmtzTWFwLnNldChuZXdCYWNrbGlua1BhdGgsIGxpbmtKc29uVG9QYXRoTWFwKTtcbiAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgIGxpbmtKc29uVG9QYXRoTWFwLnNldCh0b0pzb24obGluayksIHBhdGgpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBsb2dSZWdpc3RlcmVkSGFuZGxlcnMoYXBwOiBBcHApOiB2b2lkIHtcbiAgY29uc3QgcmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAgPSBnZXRSZW5hbWVEZWxldGVIYW5kbGVyc01hcChhcHApO1xuICBjb25zb2xlLmRlYnVnKGBQbHVnaW5zIHdpdGggcmVnaXN0ZXJlZCByZW5hbWUvZGVsZXRlIGhhbmRsZXJzOiAke0FycmF5LmZyb20ocmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAua2V5cygpKS5qb2luKCcsICcpfWApO1xufVxuXG5mdW5jdGlvbiBtYWtlS2V5KG9sZFBhdGg6IHN0cmluZywgbmV3UGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke29sZFBhdGh9IC0+ICR7bmV3UGF0aH1gO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZW5hbWVIYW5kbGVkKGFwcDogQXBwLCBvbGRQYXRoOiBzdHJpbmcsIG5ld1BhdGg6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gIG5ld1BhdGggPSBnZXRTYWZlUmVuYW1lUGF0aChhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICBpZiAob2xkUGF0aCA9PT0gbmV3UGF0aCkge1xuICAgIHJldHVybiBuZXdQYXRoO1xuICB9XG4gIGNvbnN0IGtleSA9IG1ha2VLZXkob2xkUGF0aCwgbmV3UGF0aCk7XG4gIGhhbmRsZWRSZW5hbWVzLmFkZChrZXkpO1xuICBuZXdQYXRoID0gYXdhaXQgcmVuYW1lU2FmZShhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICByZXR1cm4gbmV3UGF0aDtcbn1cblxuZnVuY3Rpb24gc2hvdWxkSW52b2tlSGFuZGxlcihhcHA6IEFwcCwgcGx1Z2luSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCByZW5hbWVEZWxldGVIYW5kbGVyUGx1Z2luSWRzID0gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwKTtcbiAgY29uc3QgbWFpblBsdWdpbklkID0gQXJyYXkuZnJvbShyZW5hbWVEZWxldGVIYW5kbGVyUGx1Z2luSWRzLmtleXMoKSlbMF07XG4gIGlmIChtYWluUGx1Z2luSWQgIT09IHBsdWdpbklkKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFtQkEsMkJBQXVCO0FBQ3ZCLHNCQUlPO0FBRVAsbUJBQTJCO0FBQzNCLHNCQUEwQjtBQUMxQixvQkFBdUI7QUFDdkIsa0JBT087QUFDUCxpQkFBeUM7QUFDekMsNEJBR087QUFDUCx3QkFRTztBQUNQLGtCQUtPO0FBQ1AsMkJBTU87QUFDUCxtQkFBMkI7QUFDM0IsbUJBTU87QUF2RVAsSUFBSSxZQUFZLFdBQVcsU0FBUyxLQUFLO0FBQUEsRUFDdkMsT0FBTyxNQUFJO0FBQUEsRUFDWCxPQUFPLENBQUM7QUFBQSxFQUNSLFlBQVk7QUFDZDtBQXFFQSxNQUFNLDBCQUEwQixvQkFBSSxJQUE0QjtBQUNoRSxNQUFNLGlCQUFpQixvQkFBSSxJQUFZO0FBZ0RoQyxTQUFTLDZCQUE2QixRQUFnQixpQkFBbUU7QUFDOUgsUUFBTSwwQkFBMEIsMkJBQTJCLE9BQU8sR0FBRztBQUNyRSxRQUFNLFdBQVcsT0FBTyxTQUFTO0FBRWpDLDBCQUF3QixJQUFJLFVBQVUsZUFBZTtBQUNyRCx3QkFBc0IsT0FBTyxHQUFHO0FBRWhDLFNBQU8s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
360
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1JlbmFtZURlbGV0ZUhhbmRsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbInZhciBfX3Byb2Nlc3MgPSBnbG9iYWxUaGlzWydwcm9jZXNzJ10gPz8ge1xuICBcImN3ZFwiOiAoKT0+XCIvXCIsXG4gIFwiZW52XCI6IHt9LFxuICBcInBsYXRmb3JtXCI6IFwiYW5kcm9pZFwiXG59O1xuLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gUmVuYW1lRGVsZXRlSGFuZGxlclxuICogQ29udGFpbnMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGhhbmRsaW5nIHJlbmFtZSBhbmQgZGVsZXRlIGV2ZW50cyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIENhY2hlZE1ldGFkYXRhLFxuICBQbHVnaW4sXG4gIFJlZmVyZW5jZSxcbiAgVEFic3RyYWN0RmlsZVxufSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgdHlwZSB7IEN1c3RvbUFycmF5RGljdCB9IGZyb20gJ29ic2lkaWFuLXR5cGluZ3MnO1xuaW1wb3J0IHR5cGUgeyBDYW52YXNEYXRhIH0gZnJvbSAnb2JzaWRpYW4vY2FudmFzLmpzJztcblxuaW1wb3J0IHsgYXJvdW5kIH0gZnJvbSAnbW9ua2V5LWFyb3VuZCc7XG5pbXBvcnQge1xuICBBcHAsXG4gIFRGaWxlLFxuICBWYXVsdFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7IHByaW50RXJyb3IgfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBub29wQXN5bmMgfSBmcm9tICcuLi9GdW5jdGlvbi50cyc7XG5pbXBvcnQgeyB0b0pzb24gfSBmcm9tICcuLi9PYmplY3QudHMnO1xuaW1wb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGpvaW4sXG4gIG1ha2VGaWxlTmFtZSxcbiAgcmVsYXRpdmVcbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyBnZXRPYnNpZGlhbkRldlV0aWxzU3RhdGUgfSBmcm9tICcuL0FwcC50cyc7XG5pbXBvcnQge1xuICBnZXRBdHRhY2htZW50Rm9sZGVyUGF0aCxcbiAgaGFzT3duQXR0YWNobWVudEZvbGRlclxufSBmcm9tICcuL0F0dGFjaG1lbnRQYXRoLnRzJztcbmltcG9ydCB7XG4gIGdldEZpbGUsXG4gIGdldEZpbGVPck51bGwsXG4gIGdldEZvbGRlck9yTnVsbCxcbiAgaXNDYW52YXNGaWxlLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlLFxuICBpc05vdGVcbn0gZnJvbSAnLi9GaWxlU3lzdGVtLnRzJztcbmltcG9ydCB7XG4gIGVkaXRMaW5rcyxcbiAgZXh0cmFjdExpbmtGaWxlLFxuICB1cGRhdGVMaW5rLFxuICB1cGRhdGVMaW5rc0luRmlsZVxufSBmcm9tICcuL0xpbmsudHMnO1xuaW1wb3J0IHtcbiAgZ2V0QWxsTGlua3MsXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVPclBhdGgsXG4gIGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlLFxuICBnZXRCYWNrbGlua3NNYXAsXG4gIGdldENhY2hlU2FmZVxufSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuaW1wb3J0IHsgYWRkVG9RdWV1ZSB9IGZyb20gJy4vUXVldWUudHMnO1xuaW1wb3J0IHtcbiAgZGVsZXRlRW1wdHlGb2xkZXJIaWVyYXJjaHksXG4gIGRlbGV0ZVNhZmUsXG4gIGdldFNhZmVSZW5hbWVQYXRoLFxuICBwcm9jZXNzLFxuICByZW5hbWVTYWZlXG59IGZyb20gJy4vVmF1bHQudHMnO1xuXG5jb25zdCBkZWxldGVkTWV0YWRhdGFDYWNoZU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBDYWNoZWRNZXRhZGF0YT4oKTtcbmNvbnN0IGhhbmRsZWRSZW5hbWVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbi8qKlxuICogU2V0dGluZ3MgZm9yIHRoZSByZW5hbWUvZGVsZXRlIGhhbmRsZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGVsZXRlIGNvbmZsaWN0aW5nIGF0dGFjaG1lbnRzLlxuICAgKi9cbiAgc2hvdWxkRGVsZXRlQ29uZmxpY3RpbmdBdHRhY2htZW50czogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkZWxldGUgZW1wdHkgZm9sZGVycy5cbiAgICovXG4gIHNob3VsZERlbGV0ZUVtcHR5Rm9sZGVyczogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkZWxldGUgb3JwaGFuIGF0dGFjaG1lbnRzIGFmdGVyIGEgZGVsZXRlLlxuICAgKi9cbiAgc2hvdWxkRGVsZXRlT3JwaGFuQXR0YWNobWVudHM6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcmVuYW1lIGF0dGFjaG1lbnQgZmlsZXMgd2hlbiBhIG5vdGUgaXMgcmVuYW1lZC5cbiAgICovXG4gIHNob3VsZFJlbmFtZUF0dGFjaG1lbnRGaWxlczogYm9vbGVhbjtcblxuICAvKipcbiAgICAqIFdoZXRoZXIgdG8gcmVuYW1lIGF0dGFjaG1lbnQgZm9sZGVyIHdoZW4gYSBub3RlIGlzIHJlbmFtZWQuXG4gICAgKi9cbiAgc2hvdWxkUmVuYW1lQXR0YWNobWVudEZvbGRlcjogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byB1cGRhdGUgZmlsZW5hbWUgYWxpYXNlcyB3aGVuIGEgbm90ZSBpcyByZW5hbWVkLlxuICAgKi9cbiAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhc2VzOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVwZGF0ZSBsaW5rcyB3aGVuIGEgbm90ZSBvciBhdHRhY2htZW50IGlzIHJlbmFtZWQuXG4gICAqL1xuICBzaG91bGRVcGRhdGVMaW5rczogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgdGhlIHJlbmFtZS9kZWxldGUgaGFuZGxlcnMuXG4gKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBzZXR0aW5nc0J1aWxkZXIgLSBBIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgc2V0dGluZ3MgZm9yIHRoZSByZW5hbWUgZGVsZXRlIGhhbmRsZXIuXG4gKiBAcmV0dXJucyB2b2lkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclJlbmFtZURlbGV0ZUhhbmRsZXJzKHBsdWdpbjogUGx1Z2luLCBzZXR0aW5nc0J1aWxkZXI6ICgpID0+IFBhcnRpYWw8UmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzPik6IHZvaWQge1xuICBjb25zdCByZW5hbWVEZWxldGVIYW5kbGVyc01hcCA9IGdldFJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwKHBsdWdpbi5hcHApO1xuICBjb25zdCBwbHVnaW5JZCA9IHBsdWdpbi5tYW5pZmVzdC5pZDtcblxuICByZW5hbWVEZWxldGVIYW5kbGVyc01hcC5zZXQocGx1Z2luSWQsIHNldHRpbmdzQnVpbGRlcik7XG4gIGxvZ1JlZ2lzdGVyZWRIYW5kbGVycyhwbHVnaW4uYXBwKTtcblxuICBwbHVnaW4ucmVnaXN0ZXIoKCkgPT4ge1xuICAgIHJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwLmRlbGV0ZShwbHVnaW5JZCk7XG4gICAgbG9nUmVnaXN0ZXJlZEhhbmRsZXJzKHBsdWdpbi5hcHApO1xuICB9KTtcblxuICBjb25zdCBhcHAgPSBwbHVnaW4uYXBwO1xuICBwbHVnaW4ucmVnaXN0ZXJFdmVudChcbiAgICBhcHAudmF1bHQub24oJ2RlbGV0ZScsIChmaWxlKSA9PiB7XG4gICAgICBpZiAoIXNob3VsZEludm9rZUhhbmRsZXIoYXBwLCBwbHVnaW5JZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgcGF0aCA9IGZpbGUucGF0aDtcbiAgICAgIGFkZFRvUXVldWUoYXBwLCAoKSA9PiBoYW5kbGVEZWxldGUoYXBwLCBwYXRoKSk7XG4gICAgfSlcbiAgKTtcblxuICBwbHVnaW4ucmVnaXN0ZXJFdmVudChcbiAgICBhcHAudmF1bHQub24oJ3JlbmFtZScsIChmaWxlLCBvbGRQYXRoKSA9PiB7XG4gICAgICBpZiAoIXNob3VsZEludm9rZUhhbmRsZXIoYXBwLCBwbHVnaW5JZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKCFpc0ZpbGUoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgbmV3UGF0aCA9IGZpbGUucGF0aDtcbiAgICAgIGhhbmRsZVJlbmFtZShhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICAgIH0pXG4gICk7XG5cbiAgcGx1Z2luLnJlZ2lzdGVyRXZlbnQoXG4gICAgYXBwLm1ldGFkYXRhQ2FjaGUub24oJ2RlbGV0ZWQnLCAoZmlsZSwgcHJldkNhY2hlKSA9PiB7XG4gICAgICBoYW5kbGVNZXRhZGF0YURlbGV0ZWQoYXBwLCBmaWxlLCBwcmV2Q2FjaGUpO1xuICAgIH0pXG4gICk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZpbGxSZW5hbWVNYXAoYXBwOiBBcHAsIG9sZFBhdGg6IHN0cmluZywgbmV3UGF0aDogc3RyaW5nLCByZW5hbWVNYXA6IE1hcDxzdHJpbmcsIHN0cmluZz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgcmVuYW1lTWFwLnNldChvbGRQYXRoLCBuZXdQYXRoKTtcblxuICBpZiAoIWlzTm90ZShvbGRQYXRoKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHNldHRpbmdzID0gZ2V0U2V0dGluZ3MoYXBwKTtcblxuICBjb25zdCBvbGRBdHRhY2htZW50Rm9sZGVyUGF0aCA9IGF3YWl0IGdldEF0dGFjaG1lbnRGb2xkZXJQYXRoKGFwcCwgb2xkUGF0aCk7XG4gIGNvbnN0IG5ld0F0dGFjaG1lbnRGb2xkZXJQYXRoID0gc2V0dGluZ3Muc2hvdWxkUmVuYW1lQXR0YWNobWVudEZvbGRlclxuICAgID8gYXdhaXQgZ2V0QXR0YWNobWVudEZvbGRlclBhdGgoYXBwLCBuZXdQYXRoKVxuICAgIDogb2xkQXR0YWNobWVudEZvbGRlclBhdGg7XG5cbiAgY29uc3Qgb2xkQXR0YWNobWVudEZvbGRlciA9IGdldEZvbGRlck9yTnVsbChhcHAsIG9sZEF0dGFjaG1lbnRGb2xkZXJQYXRoKTtcblxuICBpZiAoIW9sZEF0dGFjaG1lbnRGb2xkZXIpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBpZiAob2xkQXR0YWNobWVudEZvbGRlclBhdGggPT09IG5ld0F0dGFjaG1lbnRGb2xkZXJQYXRoICYmICFzZXR0aW5ncy5zaG91bGRSZW5hbWVBdHRhY2htZW50RmlsZXMpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBvbGRBdHRhY2htZW50RmlsZXM6IFRGaWxlW10gPSBbXTtcblxuICBpZiAoIShhd2FpdCBoYXNPd25BdHRhY2htZW50Rm9sZGVyKGFwcCwgb2xkUGF0aCkpKSB7XG4gICAgY29uc3Qgb2xkQ2FjaGUgPSBhd2FpdCBnZXRDYWNoZVNhZmUoYXBwLCBuZXdQYXRoKTtcbiAgICBpZiAoIW9sZENhY2hlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAoY29uc3Qgb2xkTGluayBvZiBnZXRBbGxMaW5rcyhvbGRDYWNoZSkpIHtcbiAgICAgIGNvbnN0IG9sZEF0dGFjaG1lbnRGaWxlID0gZXh0cmFjdExpbmtGaWxlKGFwcCwgb2xkTGluaywgb2xkUGF0aCk7XG4gICAgICBpZiAoIW9sZEF0dGFjaG1lbnRGaWxlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAob2xkQXR0YWNobWVudEZpbGUucGF0aC5zdGFydHNXaXRoKG9sZEF0dGFjaG1lbnRGb2xkZXJQYXRoKSkge1xuICAgICAgICBjb25zdCBvbGRBdHRhY2htZW50QmFja2xpbmtzID0gYXdhaXQgZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUoYXBwLCBvbGRBdHRhY2htZW50RmlsZSk7XG4gICAgICAgIGlmIChvbGRBdHRhY2htZW50QmFja2xpbmtzLmtleXMoKS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICBvbGRBdHRhY2htZW50RmlsZXMucHVzaChvbGRBdHRhY2htZW50RmlsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgVmF1bHQucmVjdXJzZUNoaWxkcmVuKG9sZEF0dGFjaG1lbnRGb2xkZXIsIChvbGRBdHRhY2htZW50RmlsZSkgPT4ge1xuICAgICAgaWYgKGlzRmlsZShvbGRBdHRhY2htZW50RmlsZSkpIHtcbiAgICAgICAgb2xkQXR0YWNobWVudEZpbGVzLnB1c2gob2xkQXR0YWNobWVudEZpbGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qgb2xkQmFzZW5hbWUgPSBiYXNlbmFtZShvbGRQYXRoLCBleHRuYW1lKG9sZFBhdGgpKTtcbiAgY29uc3QgbmV3QmFzZW5hbWUgPSBiYXNlbmFtZShuZXdQYXRoLCBleHRuYW1lKG5ld1BhdGgpKTtcblxuICBmb3IgKGNvbnN0IG9sZEF0dGFjaG1lbnRGaWxlIG9mIG9sZEF0dGFjaG1lbnRGaWxlcykge1xuICAgIGlmIChpc05vdGUob2xkQXR0YWNobWVudEZpbGUpKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgY29uc3QgcmVsYXRpdmVQYXRoID0gcmVsYXRpdmUob2xkQXR0YWNobWVudEZvbGRlclBhdGgsIG9sZEF0dGFjaG1lbnRGaWxlLnBhdGgpO1xuICAgIGNvbnN0IG5ld0RpciA9IGpvaW4obmV3QXR0YWNobWVudEZvbGRlclBhdGgsIGRpcm5hbWUocmVsYXRpdmVQYXRoKSk7XG4gICAgY29uc3QgbmV3Q2hpbGRCYXNlbmFtZSA9IHNldHRpbmdzLnNob3VsZFJlbmFtZUF0dGFjaG1lbnRGaWxlc1xuICAgICAgPyBvbGRBdHRhY2htZW50RmlsZS5iYXNlbmFtZS5yZXBsYWNlQWxsKG9sZEJhc2VuYW1lLCBuZXdCYXNlbmFtZSlcbiAgICAgIDogb2xkQXR0YWNobWVudEZpbGUuYmFzZW5hbWU7XG4gICAgbGV0IG5ld0NoaWxkUGF0aCA9IGpvaW4obmV3RGlyLCBtYWtlRmlsZU5hbWUobmV3Q2hpbGRCYXNlbmFtZSwgb2xkQXR0YWNobWVudEZpbGUuZXh0ZW5zaW9uKSk7XG5cbiAgICBpZiAob2xkQXR0YWNobWVudEZpbGUucGF0aCA9PT0gbmV3Q2hpbGRQYXRoKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoc2V0dGluZ3Muc2hvdWxkRGVsZXRlQ29uZmxpY3RpbmdBdHRhY2htZW50cykge1xuICAgICAgY29uc3QgbmV3Q2hpbGRGaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIG5ld0NoaWxkUGF0aCk7XG4gICAgICBpZiAobmV3Q2hpbGRGaWxlKSB7XG4gICAgICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci50cmFzaEZpbGUobmV3Q2hpbGRGaWxlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbmV3Q2hpbGRQYXRoID0gYXBwLnZhdWx0LmdldEF2YWlsYWJsZVBhdGgoam9pbihuZXdEaXIsIG5ld0NoaWxkQmFzZW5hbWUpLCBvbGRBdHRhY2htZW50RmlsZS5leHRlbnNpb24pO1xuICAgIH1cbiAgICByZW5hbWVNYXAuc2V0KG9sZEF0dGFjaG1lbnRGaWxlLnBhdGgsIG5ld0NoaWxkUGF0aCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwOiBBcHApOiBNYXA8c3RyaW5nLCAoKSA9PiBQYXJ0aWFsPFJlbmFtZURlbGV0ZUhhbmRsZXJTZXR0aW5ncz4+IHtcbiAgcmV0dXJuIGdldE9ic2lkaWFuRGV2VXRpbHNTdGF0ZShhcHAsICdyZW5hbWVEZWxldGVIYW5kbGVyc01hcCcsIG5ldyBNYXA8c3RyaW5nLCAoKSA9PiBQYXJ0aWFsPFJlbmFtZURlbGV0ZUhhbmRsZXJTZXR0aW5ncz4+KCkpLnZhbHVlO1xufVxuXG5mdW5jdGlvbiBnZXRTZXR0aW5ncyhhcHA6IEFwcCk6IFBhcnRpYWw8UmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzPiB7XG4gIGNvbnN0IHJlbmFtZURlbGV0ZUhhbmRsZXJzTWFwID0gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwKTtcbiAgY29uc3Qgc2V0dGluZ3NCdWlsZGVycyA9IEFycmF5LmZyb20ocmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAudmFsdWVzKCkpLnJldmVyc2UoKTtcblxuICBjb25zdCBzZXR0aW5nczogUGFydGlhbDxSZW5hbWVEZWxldGVIYW5kbGVyU2V0dGluZ3M+ID0ge307XG4gIGZvciAoY29uc3Qgc2V0dGluZ3NCdWlsZGVyIG9mIHNldHRpbmdzQnVpbGRlcnMpIHtcbiAgICBjb25zdCBuZXdTZXR0aW5ncyA9IHNldHRpbmdzQnVpbGRlcigpO1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG5ld1NldHRpbmdzKSBhcyBba2V5b2YgUmVuYW1lRGVsZXRlSGFuZGxlclNldHRpbmdzLCBib29sZWFuXVtdKSB7XG4gICAgICBzZXR0aW5nc1trZXldIHx8PSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc2V0dGluZ3M7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnNvbGUuZGVidWcoYEhhbmRsZSBEZWxldGUgJHtwYXRofWApO1xuICBpZiAoIWlzTm90ZShwYXRoKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHNldHRpbmdzID0gZ2V0U2V0dGluZ3MoYXBwKTtcbiAgaWYgKCFzZXR0aW5ncy5zaG91bGREZWxldGVPcnBoYW5BdHRhY2htZW50cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGNhY2hlID0gZGVsZXRlZE1ldGFkYXRhQ2FjaGVNYXAuZ2V0KHBhdGgpO1xuICBkZWxldGVkTWV0YWRhdGFDYWNoZU1hcC5kZWxldGUocGF0aCk7XG4gIGlmIChjYWNoZSkge1xuICAgIGNvbnN0IGxpbmtzID0gZ2V0QWxsTGlua3MoY2FjaGUpO1xuXG4gICAgZm9yIChjb25zdCBsaW5rIG9mIGxpbmtzKSB7XG4gICAgICBjb25zdCBhdHRhY2htZW50RmlsZSA9IGV4dHJhY3RMaW5rRmlsZShhcHAsIGxpbmssIHBhdGgpO1xuICAgICAgaWYgKCFhdHRhY2htZW50RmlsZSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzTm90ZShhdHRhY2htZW50RmlsZSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGRlbGV0ZVNhZmUoYXBwLCBhdHRhY2htZW50RmlsZSwgcGF0aCwgc2V0dGluZ3Muc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBhdHRhY2htZW50Rm9sZGVyUGF0aCA9IGF3YWl0IGdldEF0dGFjaG1lbnRGb2xkZXJQYXRoKGFwcCwgcGF0aCk7XG4gIGNvbnN0IGF0dGFjaG1lbnRGb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBhdHRhY2htZW50Rm9sZGVyUGF0aCk7XG5cbiAgaWYgKCFhdHRhY2htZW50Rm9sZGVyKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKCEoYXdhaXQgaGFzT3duQXR0YWNobWVudEZvbGRlcihhcHAsIHBhdGgpKSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGF3YWl0IGRlbGV0ZVNhZmUoYXBwLCBhdHRhY2htZW50Rm9sZGVyLCBwYXRoLCBmYWxzZSwgc2V0dGluZ3Muc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlTWV0YWRhdGFEZWxldGVkKGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlLCBwcmV2Q2FjaGU6IENhY2hlZE1ldGFkYXRhIHwgbnVsbCk6IHZvaWQge1xuICBjb25zdCBzZXR0aW5ncyA9IGdldFNldHRpbmdzKGFwcCk7XG4gIGlmICghc2V0dGluZ3Muc2hvdWxkRGVsZXRlT3JwaGFuQXR0YWNobWVudHMpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKGlzTWFya2Rvd25GaWxlKGZpbGUpICYmIHByZXZDYWNoZSkge1xuICAgIGRlbGV0ZWRNZXRhZGF0YUNhY2hlTWFwLnNldChmaWxlLnBhdGgsIHByZXZDYWNoZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaGFuZGxlUmVuYW1lKGFwcDogQXBwLCBvbGRQYXRoOiBzdHJpbmcsIG5ld1BhdGg6IHN0cmluZyk6IHZvaWQge1xuICBjb25zdCBrZXkgPSBtYWtlS2V5KG9sZFBhdGgsIG5ld1BhdGgpO1xuICBjb25zb2xlLmRlYnVnKGBIYW5kbGUgUmVuYW1lICR7a2V5fWApO1xuICBpZiAoaGFuZGxlZFJlbmFtZXMuaGFzKGtleSkpIHtcbiAgICBoYW5kbGVkUmVuYW1lcy5kZWxldGUoa2V5KTtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBiYWNrbGlua3MgPSBnZXRCYWNrbGlua3NGb3JGaWxlT3JQYXRoKGFwcCwgb2xkUGF0aCk7XG4gIGFkZFRvUXVldWUoYXBwLCAoKSA9PiBoYW5kbGVSZW5hbWVBc3luYyhhcHAsIG9sZFBhdGgsIG5ld1BhdGgsIGJhY2tsaW5rcykpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVSZW5hbWVBc3luYyhhcHA6IEFwcCwgb2xkUGF0aDogc3RyaW5nLCBuZXdQYXRoOiBzdHJpbmcsIGJhY2tsaW5rczogQ3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZT4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKGFwcC52YXVsdC5hZGFwdGVyLmluc2Vuc2l0aXZlICYmIG9sZFBhdGgudG9Mb3dlckNhc2UoKSA9PT0gbmV3UGF0aC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgY29uc3QgdGVtcFBhdGggPSBqb2luKGRpcm5hbWUobmV3UGF0aCksICdfX3RlbXBfXycgKyBiYXNlbmFtZShuZXdQYXRoKSk7XG4gICAgYXdhaXQgcmVuYW1lSGFuZGxlZChhcHAsIG5ld1BhdGgsIHRlbXBQYXRoKTtcbiAgICBhd2FpdCBoYW5kbGVSZW5hbWVBc3luYyhhcHAsIG9sZFBhdGgsIHRlbXBQYXRoLCBiYWNrbGlua3MpO1xuICAgIGF3YWl0IGFwcC52YXVsdC5yZW5hbWUoZ2V0RmlsZShhcHAsIHRlbXBQYXRoKSwgbmV3UGF0aCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcmVzdG9yZVVwZGF0ZUFsbExpbmtzID0gYXJvdW5kKGFwcC5maWxlTWFuYWdlciwge1xuICAgIHVwZGF0ZUFsbExpbmtzOiAoKSA9PiBub29wQXN5bmNcbiAgfSk7XG4gIHRyeSB7XG4gICAgY29uc3QgcmVuYW1lTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcbiAgICBhd2FpdCBmaWxsUmVuYW1lTWFwKGFwcCwgb2xkUGF0aCwgbmV3UGF0aCwgcmVuYW1lTWFwKTtcblxuICAgIGNvbnN0IGJhY2tsaW5rc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+PigpO1xuICAgIGluaXRCYWNrbGlua3NNYXAoYmFja2xpbmtzLmRhdGEsIHJlbmFtZU1hcCwgYmFja2xpbmtzTWFwLCBvbGRQYXRoKTtcblxuICAgIGZvciAoY29uc3QgYXR0YWNobWVudE9sZFBhdGggb2YgcmVuYW1lTWFwLmtleXMoKSkge1xuICAgICAgaWYgKGF0dGFjaG1lbnRPbGRQYXRoID09PSBvbGRQYXRoKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgY3VycmVudEJhY2tsaW5rc01hcCA9IGF3YWl0IGdldEJhY2tsaW5rc01hcChhcHAsIFthdHRhY2htZW50T2xkUGF0aF0pO1xuICAgICAgaW5pdEJhY2tsaW5rc01hcChjdXJyZW50QmFja2xpbmtzTWFwLCByZW5hbWVNYXAsIGJhY2tsaW5rc01hcCwgYXR0YWNobWVudE9sZFBhdGgpO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmVudEZvbGRlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGZvciAoY29uc3QgW29sZFJlbGF0ZWRQYXRoLCBuZXdSZWxhdGVkUGF0aF0gb2YgcmVuYW1lTWFwLmVudHJpZXMoKSkge1xuICAgICAgaWYgKG9sZFJlbGF0ZWRQYXRoID09PSBvbGRQYXRoKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgZml4ZWROZXdSZWxhdGVkUGF0aCA9IGF3YWl0IHJlbmFtZUhhbmRsZWQoYXBwLCBvbGRSZWxhdGVkUGF0aCwgbmV3UmVsYXRlZFBhdGgpO1xuICAgICAgcmVuYW1lTWFwLnNldChvbGRSZWxhdGVkUGF0aCwgZml4ZWROZXdSZWxhdGVkUGF0aCk7XG4gICAgICBwYXJlbnRGb2xkZXJzLmFkZChkaXJuYW1lKG9sZFJlbGF0ZWRQYXRoKSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2V0dGluZ3MgPSBnZXRTZXR0aW5ncyhhcHApO1xuICAgIGlmIChzZXR0aW5ncy5zaG91bGREZWxldGVFbXB0eUZvbGRlcnMpIHtcbiAgICAgIGZvciAoY29uc3QgcGFyZW50Rm9sZGVyIG9mIHBhcmVudEZvbGRlcnMpIHtcbiAgICAgICAgYXdhaXQgZGVsZXRlRW1wdHlGb2xkZXJIaWVyYXJjaHkoYXBwLCBwYXJlbnRGb2xkZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvciAoY29uc3QgW25ld0JhY2tsaW5rUGF0aCwgbGlua0pzb25Ub1BhdGhNYXBdIG9mIGJhY2tsaW5rc01hcC5lbnRyaWVzKCkpIHtcbiAgICAgIGF3YWl0IGVkaXRMaW5rcyhhcHAsIG5ld0JhY2tsaW5rUGF0aCwgKGxpbmspID0+IHtcbiAgICAgICAgY29uc3Qgb2xkUmVsYXRlZFBhdGggPSBsaW5rSnNvblRvUGF0aE1hcC5nZXQodG9Kc29uKGxpbmspKTtcbiAgICAgICAgaWYgKCFvbGRSZWxhdGVkUGF0aCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1JlbGF0ZWRQYXRoID0gcmVuYW1lTWFwLmdldChvbGRSZWxhdGVkUGF0aCk7XG4gICAgICAgIGlmICghbmV3UmVsYXRlZFBhdGgpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdXBkYXRlTGluayh7XG4gICAgICAgICAgYXBwOiBhcHAsXG4gICAgICAgICAgbGluayxcbiAgICAgICAgICBvbGRQYXRoT3JGaWxlOiBvbGRSZWxhdGVkUGF0aCxcbiAgICAgICAgICBwYXRoT3JGaWxlOiBuZXdSZWxhdGVkUGF0aCxcbiAgICAgICAgICByZW5hbWVNYXAsXG4gICAgICAgICAgc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhczogc2V0dGluZ3Muc2hvdWxkVXBkYXRlRmlsZW5hbWVBbGlhc2VzLFxuICAgICAgICAgIHNvdXJjZVBhdGhPckZpbGU6IG5ld0JhY2tsaW5rUGF0aFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChpc0NhbnZhc0ZpbGUobmV3UGF0aCkpIHtcbiAgICAgIGF3YWl0IHByb2Nlc3MoYXBwLCBuZXdQYXRoLCAoY29udGVudCkgPT4ge1xuICAgICAgICBsZXQgY2FudmFzRGF0YTogQ2FudmFzRGF0YTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjYW52YXNEYXRhID0gSlNPTi5wYXJzZShjb250ZW50KSBhcyBDYW52YXNEYXRhO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgcHJpbnRFcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBwYXJzZSBjYW52YXMgZGF0YSBmb3IgJHtuZXdQYXRofWAsIHsgY2F1c2U6IGUgfSkpO1xuICAgICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjYW52YXNEYXRhLm5vZGVzKSB7XG4gICAgICAgICAgaWYgKG5vZGUudHlwZSAhPT0gJ2ZpbGUnKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgbmV3UGF0aCA9IHJlbmFtZU1hcC5nZXQobm9kZS5maWxlKTtcbiAgICAgICAgICBpZiAoIW5ld1BhdGgpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBub2RlLmZpbGUgPSBuZXdQYXRoO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0b0pzb24oY2FudmFzRGF0YSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGlzTWFya2Rvd25GaWxlKG5ld1BhdGgpKSB7XG4gICAgICBhd2FpdCB1cGRhdGVMaW5rc0luRmlsZSh7XG4gICAgICAgIGFwcDogYXBwLFxuICAgICAgICBvbGRQYXRoT3JGaWxlOiBvbGRQYXRoLFxuICAgICAgICBwYXRoT3JGaWxlOiBuZXdQYXRoLFxuICAgICAgICByZW5hbWVNYXAsXG4gICAgICAgIHNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXM6IHNldHRpbmdzLnNob3VsZFVwZGF0ZUZpbGVuYW1lQWxpYXNlc1xuICAgICAgfSk7XG4gICAgfVxuICB9IGZpbmFsbHkge1xuICAgIHJlc3RvcmVVcGRhdGVBbGxMaW5rcygpO1xuICAgIGNvbnN0IG9ycGhhbktleXMgPSBBcnJheS5mcm9tKGhhbmRsZWRSZW5hbWVzKTtcbiAgICBhZGRUb1F1ZXVlKGFwcCwgKCkgPT4ge1xuICAgICAgZm9yIChjb25zdCBrZXkgb2Ygb3JwaGFuS2V5cykge1xuICAgICAgICBoYW5kbGVkUmVuYW1lcy5kZWxldGUoa2V5KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpbml0QmFja2xpbmtzTWFwKGN1cnJlbnRCYWNrbGlua3NNYXA6IE1hcDxzdHJpbmcsIFJlZmVyZW5jZVtdPiwgcmVuYW1lTWFwOiBNYXA8c3RyaW5nLCBzdHJpbmc+LCBiYWNrbGlua3NNYXA6IE1hcDxzdHJpbmcsIE1hcDxzdHJpbmcsIHN0cmluZz4+LCBwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgZm9yIChjb25zdCBbYmFja2xpbmtQYXRoLCBsaW5rc10gb2YgY3VycmVudEJhY2tsaW5rc01hcC5lbnRyaWVzKCkpIHtcbiAgICBjb25zdCBuZXdCYWNrbGlua1BhdGggPSByZW5hbWVNYXAuZ2V0KGJhY2tsaW5rUGF0aCkgPz8gYmFja2xpbmtQYXRoO1xuICAgIGNvbnN0IGxpbmtKc29uVG9QYXRoTWFwID0gYmFja2xpbmtzTWFwLmdldChuZXdCYWNrbGlua1BhdGgpID8/IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgYmFja2xpbmtzTWFwLnNldChuZXdCYWNrbGlua1BhdGgsIGxpbmtKc29uVG9QYXRoTWFwKTtcbiAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgIGxpbmtKc29uVG9QYXRoTWFwLnNldCh0b0pzb24obGluayksIHBhdGgpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBsb2dSZWdpc3RlcmVkSGFuZGxlcnMoYXBwOiBBcHApOiB2b2lkIHtcbiAgY29uc3QgcmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAgPSBnZXRSZW5hbWVEZWxldGVIYW5kbGVyc01hcChhcHApO1xuICBjb25zb2xlLmRlYnVnKGBQbHVnaW5zIHdpdGggcmVnaXN0ZXJlZCByZW5hbWUvZGVsZXRlIGhhbmRsZXJzOiAke0FycmF5LmZyb20ocmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAua2V5cygpKS5qb2luKCcsICcpfWApO1xufVxuXG5mdW5jdGlvbiBtYWtlS2V5KG9sZFBhdGg6IHN0cmluZywgbmV3UGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAke29sZFBhdGh9IC0+ICR7bmV3UGF0aH1gO1xufVxuXG5hc3luYyBmdW5jdGlvbiByZW5hbWVIYW5kbGVkKGFwcDogQXBwLCBvbGRQYXRoOiBzdHJpbmcsIG5ld1BhdGg6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gIG5ld1BhdGggPSBnZXRTYWZlUmVuYW1lUGF0aChhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICBpZiAob2xkUGF0aCA9PT0gbmV3UGF0aCkge1xuICAgIHJldHVybiBuZXdQYXRoO1xuICB9XG4gIGNvbnN0IGtleSA9IG1ha2VLZXkob2xkUGF0aCwgbmV3UGF0aCk7XG4gIGhhbmRsZWRSZW5hbWVzLmFkZChrZXkpO1xuICBuZXdQYXRoID0gYXdhaXQgcmVuYW1lU2FmZShhcHAsIG9sZFBhdGgsIG5ld1BhdGgpO1xuICByZXR1cm4gbmV3UGF0aDtcbn1cblxuZnVuY3Rpb24gc2hvdWxkSW52b2tlSGFuZGxlcihhcHA6IEFwcCwgcGx1Z2luSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCByZW5hbWVEZWxldGVIYW5kbGVyUGx1Z2luSWRzID0gZ2V0UmVuYW1lRGVsZXRlSGFuZGxlcnNNYXAoYXBwKTtcbiAgY29uc3QgbWFpblBsdWdpbklkID0gQXJyYXkuZnJvbShyZW5hbWVEZWxldGVIYW5kbGVyUGx1Z2luSWRzLmtleXMoKSlbMF07XG4gIGlmIChtYWluUGx1Z2luSWQgIT09IHBsdWdpbklkKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQW1CQSwyQkFBdUI7QUFDdkIsc0JBSU87QUFFUCxtQkFBMkI7QUFDM0Isc0JBQTBCO0FBQzFCLG9CQUF1QjtBQUN2QixrQkFPTztBQUNQLGlCQUF5QztBQUN6Qyw0QkFHTztBQUNQLHdCQVFPO0FBQ1Asa0JBS087QUFDUCwyQkFNTztBQUNQLG1CQUEyQjtBQUMzQixtQkFNTztBQXZFUCxJQUFJLFlBQVksV0FBVyxTQUFTLEtBQUs7QUFBQSxFQUN2QyxPQUFPLE1BQUk7QUFBQSxFQUNYLE9BQU8sQ0FBQztBQUFBLEVBQ1IsWUFBWTtBQUNkO0FBcUVBLE1BQU0sMEJBQTBCLG9CQUFJLElBQTRCO0FBQ2hFLE1BQU0saUJBQWlCLG9CQUFJLElBQVk7QUFnRGhDLFNBQVMsNkJBQTZCLFFBQWdCLGlCQUFtRTtBQUM5SCxRQUFNLDBCQUEwQiwyQkFBMkIsT0FBTyxHQUFHO0FBQ3JFLFFBQU0sV0FBVyxPQUFPLFNBQVM7QUFFakMsMEJBQXdCLElBQUksVUFBVSxlQUFlO0FBQ3JELHdCQUFzQixPQUFPLEdBQUc7QUFFaEMsU0FB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
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -40,4 +42,4 @@ function relativePathToResourceUrl(app, relativePath, notePath) {
40
42
  0 && (module.exports = {
41
43
  relativePathToResourceUrl
42
44
  });
43
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1Jlc291cmNlVXJsLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBSZXNvdXJjZVVybFxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCByZXNvdXJjZSBVUkxzIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgdG9Qb3NpeFBhdGggfSBmcm9tICcuLi9QYXRoLnRzJztcblxuLyoqXG4gKiBDb252ZXJ0cyBhIHJlbGF0aXZlIHBhdGggdG8gYSByZXNvdXJjZSBVUkwuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSByZWxhdGl2ZVBhdGggLSBUaGUgcmVsYXRpdmUgcGF0aCB0byB0aGUgcmVzb3VyY2UuXG4gKiBAcGFyYW0gbm90ZVBhdGggLSBUaGUgcGF0aCBvZiB0aGUgbm90ZS5cbiAqIEByZXR1cm5zIFRoZSByZXNvdXJjZSBVUkwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsKGFwcDogQXBwLCByZWxhdGl2ZVBhdGg6IHN0cmluZywgbm90ZVBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vdGVGdWxsUGF0aCA9IHRvUG9zaXhQYXRoKGFwcC52YXVsdC5hZGFwdGVyLmdldEZ1bGxSZWFsUGF0aChub3RlUGF0aCkpO1xuICBjb25zdCBub3RlVXJsID0gYCR7UGxhdGZvcm0ucmVzb3VyY2VQYXRoUHJlZml4fSR7bm90ZUZ1bGxQYXRofWA7XG4gIGNvbnN0IHJlbGF0aXZlVXJsID0gbmV3IFVSTChyZWxhdGl2ZVBhdGgsIG5vdGVVcmwpO1xuICByZXR1cm4gcmVsYXRpdmVVcmwudG9TdHJpbmcoKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0Esc0JBQXlCO0FBRXpCLGtCQUE0QjtBQVVyQixTQUFTLDBCQUEwQixLQUFVLGNBQXNCLFVBQTBCO0FBQ2xHLFFBQU0sbUJBQWUseUJBQVksSUFBSSxNQUFNLFFBQVEsZ0JBQWdCLFFBQVEsQ0FBQztBQUM1RSxRQUFNLFVBQVUsR0FBRyx5QkFBUyxrQkFBa0IsR0FBRyxZQUFZO0FBQzdELFFBQU0sY0FBYyxJQUFJLElBQUksY0FBYyxPQUFPO0FBQ2pELFNBQU8sWUFBWSxTQUFTO0FBQzlCOyIsCiAgIm5hbWVzIjogW10KfQo=
45
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1Jlc291cmNlVXJsLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBSZXNvdXJjZVVybFxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCByZXNvdXJjZSBVUkxzIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgdG9Qb3NpeFBhdGggfSBmcm9tICcuLi9QYXRoLnRzJztcblxuLyoqXG4gKiBDb252ZXJ0cyBhIHJlbGF0aXZlIHBhdGggdG8gYSByZXNvdXJjZSBVUkwuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSByZWxhdGl2ZVBhdGggLSBUaGUgcmVsYXRpdmUgcGF0aCB0byB0aGUgcmVzb3VyY2UuXG4gKiBAcGFyYW0gbm90ZVBhdGggLSBUaGUgcGF0aCBvZiB0aGUgbm90ZS5cbiAqIEByZXR1cm5zIFRoZSByZXNvdXJjZSBVUkwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsKGFwcDogQXBwLCByZWxhdGl2ZVBhdGg6IHN0cmluZywgbm90ZVBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vdGVGdWxsUGF0aCA9IHRvUG9zaXhQYXRoKGFwcC52YXVsdC5hZGFwdGVyLmdldEZ1bGxSZWFsUGF0aChub3RlUGF0aCkpO1xuICBjb25zdCBub3RlVXJsID0gYCR7UGxhdGZvcm0ucmVzb3VyY2VQYXRoUHJlZml4fSR7bm90ZUZ1bGxQYXRofWA7XG4gIGNvbnN0IHJlbGF0aXZlVXJsID0gbmV3IFVSTChyZWxhdGl2ZVBhdGgsIG5vdGVVcmwpO1xuICByZXR1cm4gcmVsYXRpdmVVcmwudG9TdHJpbmcoKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQSxzQkFBeUI7QUFFekIsa0JBQTRCO0FBVXJCLFNBQVMsMEJBQTBCLEtBQVUsY0FBc0IsVUFBMEI7QUFDbEcsUUFBTSxtQkFBZSx5QkFBWSxJQUFJLE1BQU0sUUFBUSxnQkFBZ0IsUUFBUSxDQUFDO0FBQzVFLFFBQU0sVUFBVSxHQUFHLHlCQUFTLGtCQUFrQixHQUFHLFlBQVk7QUFDN0QsUUFBTSxjQUFjLElBQUksSUFBSSxjQUFjLE9BQU87QUFDakQsU0FBTyxZQUFZLFNBQVM7QUFDOUI7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __defProp = Object.defineProperty;
@@ -284,4 +286,4 @@ async function renameSafe(app, oldPathOrFile, newPath) {
284
286
  process,
285
287
  renameSafe
286
288
  });
287
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1ZhdWx0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFZhdWx0XG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3Igd29ya2luZyB3aXRoIHRoZSBPYnNpZGlhbiBWYXVsdC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIExpc3RlZEZpbGVzLFxuICBURm9sZGVyXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHtcbiAgQXBwLFxuICBOb3RpY2UsXG4gIFRGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7IHBhcmVudEZvbGRlclBhdGggfSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHsgUmV0cnlPcHRpb25zIH0gZnJvbSAnLi4vQXN5bmMudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWx1ZVByb3ZpZGVyIH0gZnJvbSAnLi4vVmFsdWVQcm92aWRlci50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhdGhPckFic3RyYWN0RmlsZSxcbiAgUGF0aE9yRmlsZSxcbiAgUGF0aE9yRm9sZGVyXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5cbmltcG9ydCB7XG4gIG1hcmtzQXNUZXJtaW5hdGVSZXRyeSxcbiAgcmV0cnlXaXRoVGltZW91dFxufSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBwcmludEVycm9yIH0gZnJvbSAnLi4vRXJyb3IudHMnO1xuaW1wb3J0IHsgbm9vcEFzeW5jIH0gZnJvbSAnLi4vRnVuY3Rpb24udHMnO1xuaW1wb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGpvaW5cbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyByZXNvbHZlVmFsdWUgfSBmcm9tICcuLi9WYWx1ZVByb3ZpZGVyLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRGb2xkZXJPck51bGwsXG4gIGdldFBhdGgsXG4gIGlzRmlsZSxcbiAgaXNGb2xkZXIsXG4gIGlzTm90ZVxufSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHsgZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUgfSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuXG4vKipcbiAqIENvcGllcyBhIGZpbGUgc2FmZWx5IGluIHRoZSB2YXVsdC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIG9sZFBhdGhPckZpbGUgLSBUaGUgb2xkIHBhdGggb3IgZmlsZSB0byBjb3B5LlxuICogQHBhcmFtIG5ld1BhdGggLSBUaGUgbmV3IHBhdGggdG8gY29weSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgcGF0aCBvZiB0aGUgY29waWVkIGZpbGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb3B5U2FmZShhcHA6IEFwcCwgb2xkUGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgbmV3UGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBvbGRQYXRoT3JGaWxlKTtcblxuICBjb25zdCBuZXdGb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChuZXdQYXRoKTtcbiAgYXdhaXQgY3JlYXRlRm9sZGVyU2FmZShhcHAsIG5ld0ZvbGRlclBhdGgpO1xuXG4gIGNvbnN0IG5ld0F2YWlsYWJsZVBhdGggPSBnZXRBdmFpbGFibGVQYXRoKGFwcCwgbmV3UGF0aCk7XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBhcHAudmF1bHQuY29weShmaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhuZXdBdmFpbGFibGVQYXRoKSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbmV3QXZhaWxhYmxlUGF0aDtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZm9sZGVyIHNhZmVseSBpbiB0aGUgc3BlY2lmaWVkIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZvbGRlciB0byBjcmVhdGUuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmb2xkZXIgd2FzIGNyZWF0ZWQuXG4gKiBAdGhyb3dzIElmIGFuIGVycm9yIG9jY3VycyB3aGlsZSBjcmVhdGluZyB0aGUgZm9sZGVyIGFuZCBpdCBzdGlsbCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlRm9sZGVyU2FmZShhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGlmIChhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5leGlzdHMocGF0aCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICB0cnkge1xuICAgIGF3YWl0IGFwcC52YXVsdC5jcmVhdGVGb2xkZXIocGF0aCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoIWF3YWl0IGFwcC52YXVsdC5leGlzdHMocGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIGluIHRoZSB2YXVsdCB3aXRoIHBhcmVudCBmb2xkZXJzIGlmIG5lZWRlZC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmaWxlIHRvIGNyZWF0ZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgY2FsbGVkIHRvIGRlbGV0ZSB0aGUgdGVtcG9yYXJ5IGZpbGUgYW5kIGFsbCBpdHMgY3JlYXRlZCBwYXJlbnRzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlVGVtcEZpbGUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8KCkgPT4gUHJvbWlzZTx2b2lkPj4ge1xuICBsZXQgZmlsZSA9IGdldEZpbGVPck51bGwoYXBwLCBwYXRoKTtcbiAgaWYgKGZpbGUpIHtcbiAgICByZXR1cm4gbm9vcEFzeW5jO1xuICB9XG5cbiAgY29uc3QgZm9sZGVyQ2xlYW51cCA9IGF3YWl0IGNyZWF0ZVRlbXBGb2xkZXIoYXBwLCBwYXJlbnRGb2xkZXJQYXRoKHBhdGgpKTtcblxuICB0cnkge1xuICAgIGF3YWl0IGFwcC52YXVsdC5jcmVhdGUocGF0aCwgJycpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKCFhd2FpdCBhcHAudmF1bHQuZXhpc3RzKHBhdGgpKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aCk7XG5cbiAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICBpZiAoIWZpbGUuZGVsZXRlZCkge1xuICAgICAgYXdhaXQgYXBwLmZpbGVNYW5hZ2VyLnRyYXNoRmlsZShmaWxlKTtcbiAgICB9XG4gICAgYXdhaXQgZm9sZGVyQ2xlYW51cCgpO1xuICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSB0ZW1wb3JhcnkgZm9sZGVyIGluIHRoZSB2YXVsdCB3aXRoIHBhcmVudCBmb2xkZXJzIGlmIG5lZWRlZC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgdG8gY3JlYXRlLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBmdW5jdGlvbiB0aGF0IGNhbiBiZSBjYWxsZWQgdG8gZGVsZXRlIHRoZSB0ZW1wb3JhcnkgZm9sZGVyIGFuZCBhbGwgaXRzIGNyZWF0ZWQgcGFyZW50cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGb2xkZXIoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8KCkgPT4gUHJvbWlzZTx2b2lkPj4ge1xuICBsZXQgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgcGF0aCk7XG4gIGlmIChmb2xkZXIpIHtcbiAgICByZXR1cm4gbm9vcEFzeW5jO1xuICB9XG5cbiAgY29uc3QgZGlyUGF0aCA9IHBhcmVudEZvbGRlclBhdGgocGF0aCk7XG4gIGF3YWl0IGNyZWF0ZVRlbXBGb2xkZXIoYXBwLCBkaXJQYXRoKTtcblxuICBjb25zdCBmb2xkZXJDbGVhbnVwID0gYXdhaXQgY3JlYXRlVGVtcEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgocGF0aCkpO1xuXG4gIGF3YWl0IGNyZWF0ZUZvbGRlclNhZmUoYXBwLCBwYXRoKTtcblxuICBmb2xkZXIgPSBnZXRGb2xkZXIoYXBwLCBwYXRoKTtcblxuICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghZm9sZGVyLmRlbGV0ZWQpIHtcbiAgICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci50cmFzaEZpbGUoZm9sZGVyKTtcbiAgICB9XG4gICAgYXdhaXQgZm9sZGVyQ2xlYW51cCgpO1xuICB9O1xufVxuXG4vKipcbiAqIFJlbW92ZXMgZW1wdHkgZm9sZGVyIGhpZXJhcmNoeSBzdGFydGluZyBmcm9tIHRoZSBnaXZlbiBmb2xkZXIuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgZm9sZGVyIHRvIHN0YXJ0IHJlbW92aW5nIGVtcHR5IGhpZXJhcmNoeSBmcm9tLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZW1wdHkgaGllcmFyY2h5IGlzIGRlbGV0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWxldGVFbXB0eUZvbGRlckhpZXJhcmNoeShhcHA6IEFwcCwgcGF0aE9yRm9sZGVyOiBudWxsIHwgUGF0aE9yRm9sZGVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGxldCBmb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBwYXRoT3JGb2xkZXIpO1xuXG4gIHdoaWxlIChmb2xkZXIpIHtcbiAgICBpZiAoIWF3YWl0IGlzRW1wdHlGb2xkZXIoYXBwLCBmb2xkZXIpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBhcmVudCA9IGZvbGRlci5wYXJlbnQ7XG4gICAgYXdhaXQgZGVsZXRlU2FmZShhcHAsIGZvbGRlci5wYXRoKTtcbiAgICBmb2xkZXIgPSBwYXJlbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBEZWxldGVzIGFic3RyYWN0IGZpbGUgc2FmZWx5IGZyb20gdGhlIHZhdWx0LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUgdG8gZGVsZXRlLlxuICogQHBhcmFtIGRlbGV0ZWROb3RlUGF0aCAtIE9wdGlvbmFsLiBUaGUgcGF0aCBvZiB0aGUgbm90ZSB0aGF0IHRyaWdnZXJlZCB0aGUgcmVtb3ZhbC5cbiAqIEBwYXJhbSBzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHMgLSBPcHRpb25hbC4gSWYgYHRydWVgLCBhIG5vdGljZSB3aWxsIGJlIHNob3duIGZvciBlYWNoIGF0dGFjaG1lbnQgdGhhdCBpcyBzdGlsbCB1c2VkIGJ5IG90aGVyIG5vdGVzLlxuICogQHBhcmFtIHNob3VsZERlbGV0ZUVtcHR5Rm9sZGVycyAtIE9wdGlvbmFsLiBJZiBgdHJ1ZWAsIGVtcHR5IGZvbGRlcnMgd2lsbCBiZSBkZWxldGVkLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgcmVtb3ZhbCB3YXMgc3VjY2Vzc2Z1bC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGV0ZVNhZmUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckFic3RyYWN0RmlsZSwgZGVsZXRlZE5vdGVQYXRoPzogc3RyaW5nLCBzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHM/OiBib29sZWFuLCBzaG91bGREZWxldGVFbXB0eUZvbGRlcnM/OiBib29sZWFuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBpZiAoIWZpbGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgY2FuRGVsZXRlID0gaXNGaWxlKGZpbGUpIHx8IChzaG91bGREZWxldGVFbXB0eUZvbGRlcnMgPz8gdHJ1ZSk7XG5cbiAgaWYgKGlzRmlsZShmaWxlKSkge1xuICAgIGNvbnN0IGJhY2tsaW5rcyA9IGF3YWl0IGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlKGFwcCwgZmlsZSk7XG4gICAgaWYgKGRlbGV0ZWROb3RlUGF0aCkge1xuICAgICAgYmFja2xpbmtzLmNsZWFyKGRlbGV0ZWROb3RlUGF0aCk7XG4gICAgfVxuICAgIGlmIChiYWNrbGlua3MuY291bnQoKSAhPT0gMCkge1xuICAgICAgaWYgKHNob3VsZFJlcG9ydFVzZWRBdHRhY2htZW50cykge1xuICAgICAgICBuZXcgTm90aWNlKGBBdHRhY2htZW50ICR7ZmlsZS5wYXRofSBpcyBzdGlsbCB1c2VkIGJ5IG90aGVyIG5vdGVzLiBJdCB3aWxsIG5vdCBiZSBkZWxldGVkLmApO1xuICAgICAgfVxuICAgICAgY2FuRGVsZXRlID0gZmFsc2U7XG4gICAgfVxuICB9IGVsc2UgaWYgKGlzRm9sZGVyKGZpbGUpKSB7XG4gICAgY29uc3QgbGlzdGVkRmlsZXMgPSBhd2FpdCBsaXN0U2FmZShhcHAsIGZpbGUpO1xuICAgIGZvciAoY29uc3QgY2hpbGQgb2YgWy4uLmxpc3RlZEZpbGVzLmZpbGVzLCAuLi5saXN0ZWRGaWxlcy5mb2xkZXJzXSkge1xuICAgICAgY2FuRGVsZXRlICYmPSBhd2FpdCBkZWxldGVTYWZlKGFwcCwgY2hpbGQsIGRlbGV0ZWROb3RlUGF0aCwgc2hvdWxkUmVwb3J0VXNlZEF0dGFjaG1lbnRzKTtcbiAgICB9XG5cbiAgICBjYW5EZWxldGUgJiY9IGF3YWl0IGlzRW1wdHlGb2xkZXIoYXBwLCBmaWxlKTtcbiAgfVxuXG4gIGlmIChjYW5EZWxldGUpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgYXBwLmZpbGVNYW5hZ2VyLnRyYXNoRmlsZShmaWxlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhmaWxlLnBhdGgpKSB7XG4gICAgICAgIHByaW50RXJyb3IobmV3IEVycm9yKGBGYWlsZWQgdG8gZGVsZXRlICR7ZmlsZS5wYXRofWAsIHsgY2F1c2U6IGUgfSkpO1xuICAgICAgICBjYW5EZWxldGUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2FuRGVsZXRlO1xufVxuXG4vKipcbiAqIEdldHMgYW4gYXZhaWxhYmxlIHBhdGggZm9yIGEgZmlsZSBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZpbGUgdG8gZ2V0IGFuIGF2YWlsYWJsZSBwYXRoIGZvci5cbiAqIEByZXR1cm5zIFRoZSBhdmFpbGFibGUgcGF0aCBmb3IgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmFpbGFibGVQYXRoKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBleHQgPSBleHRuYW1lKHBhdGgpO1xuICByZXR1cm4gYXBwLnZhdWx0LmdldEF2YWlsYWJsZVBhdGgoam9pbihkaXJuYW1lKHBhdGgpLCBiYXNlbmFtZShwYXRoLCBleHQpKSwgZXh0LnNsaWNlKDEpKTtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYW4gYXJyYXkgb2YgTWFya2Rvd24gZmlsZXMgZnJvbSB0aGUgYXBwJ3MgdmF1bHQgYW5kIHNvcnRzIHRoZW0gYWxwaGFiZXRpY2FsbHkgYnkgdGhlaXIgZmlsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgTWFya2Rvd24gZmlsZXMgc29ydGVkIGJ5IGZpbGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1hcmtkb3duRmlsZXNTb3J0ZWQoYXBwOiBBcHApOiBURmlsZVtdIHtcbiAgcmV0dXJuIGFwcC52YXVsdC5nZXRNYXJrZG93bkZpbGVzKCkuc29ydCgoYSwgYikgPT4gYS5wYXRoLmxvY2FsZUNvbXBhcmUoYi5wYXRoKSk7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGFuIGFycmF5IG9mIGFsbCBub3RlIGZpbGVzIGZyb20gdGhlIGFwcCdzIHZhdWx0IGFuZCBzb3J0cyB0aGVtIGFscGhhYmV0aWNhbGx5IGJ5IHRoZWlyIGZpbGUgcGF0aC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgYWxsIG5vdGUgZmlsZXMgaW4gdGhlIHZhdWx0IHNvcnRlZCBieSBmaWxlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROb3RlRmlsZXNTb3J0ZWQoYXBwOiBBcHApOiBURmlsZVtdIHtcbiAgcmV0dXJuIGFwcC52YXVsdC5nZXRBbGxMb2FkZWRGaWxlcygpLmZpbHRlcigoZmlsZSkgPT4gaXNGaWxlKGZpbGUpICYmIGlzTm90ZShmaWxlKSkuc29ydCgoYSwgYikgPT4gYS5wYXRoLmxvY2FsZUNvbXBhcmUoYi5wYXRoKSkgYXMgVEZpbGVbXTtcbn1cblxuLyoqXG4gKiBHZXRzIGEgc2FmZSByZW5hbWUgcGF0aCBmb3IgYSBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gb2xkUGF0aE9yRmlsZSAtIFRoZSBvbGQgcGF0aCBvciBmaWxlIHRvIHJlbmFtZS5cbiAqIEBwYXJhbSBuZXdQYXRoIC0gVGhlIG5ldyBwYXRoIHRvIHJlbmFtZSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIFRoZSBzYWZlIHJlbmFtZSBwYXRoIGZvciB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNhZmVSZW5hbWVQYXRoKGFwcDogQXBwLCBvbGRQYXRoT3JGaWxlOiBQYXRoT3JGaWxlLCBuZXdQYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBvbGRQYXRoID0gZ2V0UGF0aChvbGRQYXRoT3JGaWxlKTtcblxuICBpZiAoYXBwLnZhdWx0LmFkYXB0ZXIuaW5zZW5zaXRpdmUpIHtcbiAgICBsZXQgZm9sZGVyUGF0aCA9IGRpcm5hbWUobmV3UGF0aCk7XG4gICAgbGV0IG5vbkV4aXN0aW5nUGF0aCA9IGJhc2VuYW1lKG5ld1BhdGgpO1xuICAgIGxldCBmb2xkZXI6IG51bGwgfCBURm9sZGVyID0gbnVsbDtcbiAgICBmb3IgKDsgOykge1xuICAgICAgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgZm9sZGVyUGF0aCwgdHJ1ZSk7XG4gICAgICBpZiAoZm9sZGVyKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgbm9uRXhpc3RpbmdQYXRoID0gam9pbihiYXNlbmFtZShmb2xkZXJQYXRoKSwgbm9uRXhpc3RpbmdQYXRoKTtcbiAgICAgIGZvbGRlclBhdGggPSBkaXJuYW1lKGZvbGRlclBhdGgpO1xuICAgIH1cbiAgICBuZXdQYXRoID0gam9pbihmb2xkZXIuZ2V0UGFyZW50UHJlZml4KCksIG5vbkV4aXN0aW5nUGF0aCk7XG4gIH1cblxuICBpZiAob2xkUGF0aC50b0xvd2VyQ2FzZSgpID09PSBuZXdQYXRoLnRvTG93ZXJDYXNlKCkpIHtcbiAgICByZXR1cm4gbmV3UGF0aDtcbiAgfVxuXG4gIHJldHVybiBnZXRBdmFpbGFibGVQYXRoKGFwcCwgbmV3UGF0aCk7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgZm9sZGVyIGlzIGVtcHR5LlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgcGF0aCBvciBmb2xkZXIgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmb2xkZXIgaXMgZW1wdHkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpc0VtcHR5Rm9sZGVyKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IFBhdGhPckZvbGRlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBjb25zdCBsaXN0ZWRGaWxlcyA9IGF3YWl0IGxpc3RTYWZlKGFwcCwgZ2V0UGF0aChwYXRoT3JGb2xkZXIpKTtcbiAgcmV0dXJuIGxpc3RlZEZpbGVzLmZpbGVzLmxlbmd0aCA9PT0gMCAmJiBsaXN0ZWRGaWxlcy5mb2xkZXJzLmxlbmd0aCA9PT0gMDtcbn1cblxuLyoqXG4gKiBTYWZlbHkgbGlzdHMgdGhlIGZpbGVzIGFuZCBmb2xkZXJzIGF0IHRoZSBzcGVjaWZpZWQgcGF0aCBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgcGF0aCBvciBmb2xkZXIgdG8gbGlzdC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgYExpc3RlZEZpbGVzYCBvYmplY3QgY29udGFpbmluZyB0aGUgbGlzdGVkIGZpbGVzIGFuZCBmb2xkZXJzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbGlzdFNhZmUoYXBwOiBBcHAsIHBhdGhPckZvbGRlcjogUGF0aE9yRm9sZGVyKTogUHJvbWlzZTxMaXN0ZWRGaWxlcz4ge1xuICBjb25zdCBwYXRoID0gZ2V0UGF0aChwYXRoT3JGb2xkZXIpO1xuICBjb25zdCBFTVBUWSA9IHsgZmlsZXM6IFtdLCBmb2xkZXJzOiBbXSB9O1xuXG4gIGlmICgoYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIuc3RhdChwYXRoKSk/LnR5cGUgIT09ICdmb2xkZXInKSB7XG4gICAgcmV0dXJuIEVNUFRZO1xuICB9XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIubGlzdChwYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChhd2FpdCBhcHAudmF1bHQuZXhpc3RzKHBhdGgpKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgYSBmaWxlIHdpdGggcmV0cnkgbG9naWMsIHVwZGF0aW5nIGl0cyBjb250ZW50IGJhc2VkIG9uIGEgcHJvdmlkZWQgdmFsdWUgb3IgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZSwgdHlwaWNhbGx5IHVzZWQgZm9yIGFjY2Vzc2luZyB0aGUgdmF1bHQuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gYmUgcHJvY2Vzc2VkLiBJdCBjYW4gYmUgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBwYXRoIG9yIGEgZmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gbmV3Q29udGVudFByb3ZpZGVyIC0gQSB2YWx1ZSBwcm92aWRlciB0aGF0IHJldHVybnMgdGhlIG5ldyBjb250ZW50IGJhc2VkIG9uIHRoZSBvbGQgY29udGVudCBvZiB0aGUgZmlsZS5cbiAqIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIG9sZCBjb250ZW50IGFzIGFuIGFyZ3VtZW50IGFuZCByZXR1cm5zIHRoZSBuZXcgY29udGVudC5cbiAqIElmIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCBpdCBzaG91bGQgcmV0dXJuIGBudWxsYCBpZiB0aGUgcHJvY2VzcyBzaG91bGQgYmUgcmV0cmllZC5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbC4gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciByZXRyeWluZyB0aGUgcHJvY2Vzcy4gSWYgbm90IHByb3ZpZGVkLCBkZWZhdWx0IG9wdGlvbnMgd2lsbCBiZSB1c2VkLlxuICpcbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIG9uY2UgdGhlIHByb2Nlc3MgaXMgY29tcGxldGUuXG4gKlxuICogQHRocm93cyBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBwcm9jZXNzIGZhaWxzIGFmdGVyIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldHJpZXMgb3IgdGltZW91dC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb2Nlc3MoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsIG5ld0NvbnRlbnRQcm92aWRlcjogVmFsdWVQcm92aWRlcjxudWxsIHwgc3RyaW5nLCBbc3RyaW5nXT4sIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcbiAgY29uc3QgREVGQVVMVF9SRVRSWV9PUFRJT05TOiBQYXJ0aWFsPFJldHJ5T3B0aW9ucz4gPSB7IHRpbWVvdXRJbk1pbGxpc2Vjb25kczogNjAwMDAgfTtcbiAgY29uc3Qgb3ZlcnJpZGRlbk9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgLi4uREVGQVVMVF9SRVRSWV9PUFRJT05TLCAuLi5yZXRyeU9wdGlvbnMgfTtcbiAgYXdhaXQgcmV0cnlXaXRoVGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgaWYgKGZpbGUuZGVsZXRlZCkge1xuICAgICAgdGhyb3cgbWFya3NBc1Rlcm1pbmF0ZVJldHJ5KG5ldyBFcnJvcihgRmlsZSAke2ZpbGUucGF0aH0gaXMgZGVsZXRlZGApKTtcbiAgICB9XG4gICAgY29uc3Qgb2xkQ29udGVudCA9IGF3YWl0IGFwcC52YXVsdC5yZWFkKGZpbGUpO1xuICAgIGNvbnN0IG5ld0NvbnRlbnQgPSBhd2FpdCByZXNvbHZlVmFsdWUobmV3Q29udGVudFByb3ZpZGVyLCBvbGRDb250ZW50KTtcbiAgICBpZiAobmV3Q29udGVudCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBsZXQgc3VjY2VzcyA9IHRydWU7XG4gICAgYXdhaXQgYXBwLnZhdWx0LnByb2Nlc3MoZmlsZSwgKGNvbnRlbnQpID0+IHtcbiAgICAgIGlmIChjb250ZW50ICE9PSBvbGRDb250ZW50KSB7XG4gICAgICAgIGNvbnNvbGUud2FybignQ29udGVudCBoYXMgY2hhbmdlZCBzaW5jZSBpdCB3YXMgcmVhZC4gUmV0cnlpbmcuLi4nLCB7XG4gICAgICAgICAgYWN0dWFsQ29udGVudDogY29udGVudCxcbiAgICAgICAgICBleHBlY3RlZENvbnRlbnQ6IG9sZENvbnRlbnQsXG4gICAgICAgICAgcGF0aDogZmlsZS5wYXRoXG4gICAgICAgIH0pO1xuICAgICAgICBzdWNjZXNzID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbmV3Q29udGVudDtcbiAgICB9KTtcblxuICAgIHJldHVybiBzdWNjZXNzO1xuICB9LCBvdmVycmlkZGVuT3B0aW9ucyk7XG59XG5cbi8qKlxuICogUmVuYW1lcyBhIGZpbGUgc2FmZWx5IGluIHRoZSB2YXVsdC5cbiAqIElmIHRoZSBuZXcgcGF0aCBhbHJlYWR5IGV4aXN0cywgdGhlIGZpbGUgd2lsbCBiZSByZW5hbWVkIHRvIGFuIGF2YWlsYWJsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gb2xkUGF0aE9yRmlsZSAtIFRoZSBvbGQgcGF0aCBvciBmaWxlIHRvIHJlbmFtZS5cbiAqIEBwYXJhbSBuZXdQYXRoIC0gVGhlIG5ldyBwYXRoIHRvIHJlbmFtZSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgcGF0aCBvZiB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmFtZVNhZmUoYXBwOiBBcHAsIG9sZFBhdGhPckZpbGU6IFBhdGhPckZpbGUsIG5ld1BhdGg6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gIGNvbnN0IG9sZEZpbGUgPSBnZXRGaWxlKGFwcCwgb2xkUGF0aE9yRmlsZSwgZmFsc2UsIHRydWUpO1xuXG4gIGNvbnN0IG5ld0F2YWlsYWJsZVBhdGggPSBnZXRTYWZlUmVuYW1lUGF0aChhcHAsIG9sZFBhdGhPckZpbGUsIG5ld1BhdGgpO1xuXG4gIGlmIChvbGRGaWxlLnBhdGgudG9Mb3dlckNhc2UoKSA9PT0gbmV3QXZhaWxhYmxlUGF0aC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgaWYgKG9sZEZpbGUucGF0aCAhPT0gbmV3UGF0aCkge1xuICAgICAgYXdhaXQgYXBwLnZhdWx0LnJlbmFtZShvbGRGaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld0F2YWlsYWJsZVBhdGg7XG4gIH1cblxuICBjb25zdCBuZXdGb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChuZXdBdmFpbGFibGVQYXRoKTtcbiAgYXdhaXQgY3JlYXRlRm9sZGVyU2FmZShhcHAsIG5ld0ZvbGRlclBhdGgpO1xuXG4gIHRyeSB7XG4gICAgYXdhaXQgYXBwLnZhdWx0LnJlbmFtZShvbGRGaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhuZXdBdmFpbGFibGVQYXRoKSB8fCBhd2FpdCBhcHAudmF1bHQuZXhpc3RzKG9sZEZpbGUucGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5ld0F2YWlsYWJsZVBhdGg7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBZUEsc0JBSU87QUFDUCw2QkFBaUM7QUFVakMsbUJBR087QUFDUCxtQkFBMkI7QUFDM0Isc0JBQTBCO0FBQzFCLGtCQUtPO0FBQ1AsMkJBQTZCO0FBQzdCLHdCQVVPO0FBQ1AsMkJBQXdDO0FBdER4QyxJQUFJLFlBQVksV0FBVyxTQUFTLEtBQUs7QUFBQSxFQUN2QyxPQUFPLE1BQUk7QUFBQSxFQUNYLE9BQU8sQ0FBQztBQUFBLEVBQ1IsWUFBWTtBQUNkO0FBNERBLGVBQXNCLFNBQVMsS0FBVSxlQUEyQixTQUFrQztBQUNwRyxRQUFNLFdBQU8sMkJBQVEsS0FBSyxhQUFhO0FBRXZDLFFBQU0sb0JBQWdCLHlDQUFpQixPQUFPO0FBQzlDLFFBQU0saUJBQWlCLEtBQUssYUFBYTtBQUV6QyxRQUFNLG1CQUFtQixpQkFBaUIsS0FBSyxPQUFPO0FBRXRELE1BQUk7QUFDRixVQUFNLElBQUks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
289
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL1ZhdWx0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ2YXIgX19wcm9jZXNzID0gZ2xvYmFsVGhpc1sncHJvY2VzcyddID8/IHtcbiAgXCJjd2RcIjogKCk9PlwiL1wiLFxuICBcImVudlwiOiB7fSxcbiAgXCJwbGF0Zm9ybVwiOiBcImFuZHJvaWRcIlxufTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFZhdWx0XG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3Igd29ya2luZyB3aXRoIHRoZSBPYnNpZGlhbiBWYXVsdC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIExpc3RlZEZpbGVzLFxuICBURm9sZGVyXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHtcbiAgQXBwLFxuICBOb3RpY2UsXG4gIFRGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7IHBhcmVudEZvbGRlclBhdGggfSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHsgUmV0cnlPcHRpb25zIH0gZnJvbSAnLi4vQXN5bmMudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWx1ZVByb3ZpZGVyIH0gZnJvbSAnLi4vVmFsdWVQcm92aWRlci50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhdGhPckFic3RyYWN0RmlsZSxcbiAgUGF0aE9yRmlsZSxcbiAgUGF0aE9yRm9sZGVyXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5cbmltcG9ydCB7XG4gIG1hcmtzQXNUZXJtaW5hdGVSZXRyeSxcbiAgcmV0cnlXaXRoVGltZW91dFxufSBmcm9tICcuLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBwcmludEVycm9yIH0gZnJvbSAnLi4vRXJyb3IudHMnO1xuaW1wb3J0IHsgbm9vcEFzeW5jIH0gZnJvbSAnLi4vRnVuY3Rpb24udHMnO1xuaW1wb3J0IHtcbiAgYmFzZW5hbWUsXG4gIGRpcm5hbWUsXG4gIGV4dG5hbWUsXG4gIGpvaW5cbn0gZnJvbSAnLi4vUGF0aC50cyc7XG5pbXBvcnQgeyByZXNvbHZlVmFsdWUgfSBmcm9tICcuLi9WYWx1ZVByb3ZpZGVyLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRGb2xkZXJPck51bGwsXG4gIGdldFBhdGgsXG4gIGlzRmlsZSxcbiAgaXNGb2xkZXIsXG4gIGlzTm90ZVxufSBmcm9tICcuL0ZpbGVTeXN0ZW0udHMnO1xuaW1wb3J0IHsgZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUgfSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuXG4vKipcbiAqIENvcGllcyBhIGZpbGUgc2FmZWx5IGluIHRoZSB2YXVsdC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIG9sZFBhdGhPckZpbGUgLSBUaGUgb2xkIHBhdGggb3IgZmlsZSB0byBjb3B5LlxuICogQHBhcmFtIG5ld1BhdGggLSBUaGUgbmV3IHBhdGggdG8gY29weSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgcGF0aCBvZiB0aGUgY29waWVkIGZpbGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb3B5U2FmZShhcHA6IEFwcCwgb2xkUGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgbmV3UGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBvbGRQYXRoT3JGaWxlKTtcblxuICBjb25zdCBuZXdGb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChuZXdQYXRoKTtcbiAgYXdhaXQgY3JlYXRlRm9sZGVyU2FmZShhcHAsIG5ld0ZvbGRlclBhdGgpO1xuXG4gIGNvbnN0IG5ld0F2YWlsYWJsZVBhdGggPSBnZXRBdmFpbGFibGVQYXRoKGFwcCwgbmV3UGF0aCk7XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBhcHAudmF1bHQuY29weShmaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhuZXdBdmFpbGFibGVQYXRoKSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbmV3QXZhaWxhYmxlUGF0aDtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZm9sZGVyIHNhZmVseSBpbiB0aGUgc3BlY2lmaWVkIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZvbGRlciB0byBjcmVhdGUuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmb2xkZXIgd2FzIGNyZWF0ZWQuXG4gKiBAdGhyb3dzIElmIGFuIGVycm9yIG9jY3VycyB3aGlsZSBjcmVhdGluZyB0aGUgZm9sZGVyIGFuZCBpdCBzdGlsbCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlRm9sZGVyU2FmZShhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGlmIChhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5leGlzdHMocGF0aCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICB0cnkge1xuICAgIGF3YWl0IGFwcC52YXVsdC5jcmVhdGVGb2xkZXIocGF0aCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoIWF3YWl0IGFwcC52YXVsdC5leGlzdHMocGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRlbXBvcmFyeSBmaWxlIGluIHRoZSB2YXVsdCB3aXRoIHBhcmVudCBmb2xkZXJzIGlmIG5lZWRlZC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmaWxlIHRvIGNyZWF0ZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgY2FsbGVkIHRvIGRlbGV0ZSB0aGUgdGVtcG9yYXJ5IGZpbGUgYW5kIGFsbCBpdHMgY3JlYXRlZCBwYXJlbnRzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlVGVtcEZpbGUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8KCkgPT4gUHJvbWlzZTx2b2lkPj4ge1xuICBsZXQgZmlsZSA9IGdldEZpbGVPck51bGwoYXBwLCBwYXRoKTtcbiAgaWYgKGZpbGUpIHtcbiAgICByZXR1cm4gbm9vcEFzeW5jO1xuICB9XG5cbiAgY29uc3QgZm9sZGVyQ2xlYW51cCA9IGF3YWl0IGNyZWF0ZVRlbXBGb2xkZXIoYXBwLCBwYXJlbnRGb2xkZXJQYXRoKHBhdGgpKTtcblxuICB0cnkge1xuICAgIGF3YWl0IGFwcC52YXVsdC5jcmVhdGUocGF0aCwgJycpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKCFhd2FpdCBhcHAudmF1bHQuZXhpc3RzKHBhdGgpKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIGZpbGUgPSBnZXRGaWxlKGFwcCwgcGF0aCk7XG5cbiAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICBpZiAoIWZpbGUuZGVsZXRlZCkge1xuICAgICAgYXdhaXQgYXBwLmZpbGVNYW5hZ2VyLnRyYXNoRmlsZShmaWxlKTtcbiAgICB9XG4gICAgYXdhaXQgZm9sZGVyQ2xlYW51cCgpO1xuICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSB0ZW1wb3JhcnkgZm9sZGVyIGluIHRoZSB2YXVsdCB3aXRoIHBhcmVudCBmb2xkZXJzIGlmIG5lZWRlZC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgdG8gY3JlYXRlLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBmdW5jdGlvbiB0aGF0IGNhbiBiZSBjYWxsZWQgdG8gZGVsZXRlIHRoZSB0ZW1wb3JhcnkgZm9sZGVyIGFuZCBhbGwgaXRzIGNyZWF0ZWQgcGFyZW50cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGb2xkZXIoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8KCkgPT4gUHJvbWlzZTx2b2lkPj4ge1xuICBsZXQgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgcGF0aCk7XG4gIGlmIChmb2xkZXIpIHtcbiAgICByZXR1cm4gbm9vcEFzeW5jO1xuICB9XG5cbiAgY29uc3QgZGlyUGF0aCA9IHBhcmVudEZvbGRlclBhdGgocGF0aCk7XG4gIGF3YWl0IGNyZWF0ZVRlbXBGb2xkZXIoYXBwLCBkaXJQYXRoKTtcblxuICBjb25zdCBmb2xkZXJDbGVhbnVwID0gYXdhaXQgY3JlYXRlVGVtcEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgocGF0aCkpO1xuXG4gIGF3YWl0IGNyZWF0ZUZvbGRlclNhZmUoYXBwLCBwYXRoKTtcblxuICBmb2xkZXIgPSBnZXRGb2xkZXIoYXBwLCBwYXRoKTtcblxuICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghZm9sZGVyLmRlbGV0ZWQpIHtcbiAgICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci50cmFzaEZpbGUoZm9sZGVyKTtcbiAgICB9XG4gICAgYXdhaXQgZm9sZGVyQ2xlYW51cCgpO1xuICB9O1xufVxuXG4vKipcbiAqIFJlbW92ZXMgZW1wdHkgZm9sZGVyIGhpZXJhcmNoeSBzdGFydGluZyBmcm9tIHRoZSBnaXZlbiBmb2xkZXIuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgZm9sZGVyIHRvIHN0YXJ0IHJlbW92aW5nIGVtcHR5IGhpZXJhcmNoeSBmcm9tLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZW1wdHkgaGllcmFyY2h5IGlzIGRlbGV0ZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWxldGVFbXB0eUZvbGRlckhpZXJhcmNoeShhcHA6IEFwcCwgcGF0aE9yRm9sZGVyOiBudWxsIHwgUGF0aE9yRm9sZGVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGxldCBmb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBwYXRoT3JGb2xkZXIpO1xuXG4gIHdoaWxlIChmb2xkZXIpIHtcbiAgICBpZiAoIWF3YWl0IGlzRW1wdHlGb2xkZXIoYXBwLCBmb2xkZXIpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBhcmVudCA9IGZvbGRlci5wYXJlbnQ7XG4gICAgYXdhaXQgZGVsZXRlU2FmZShhcHAsIGZvbGRlci5wYXRoKTtcbiAgICBmb2xkZXIgPSBwYXJlbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBEZWxldGVzIGFic3RyYWN0IGZpbGUgc2FmZWx5IGZyb20gdGhlIHZhdWx0LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUgdG8gZGVsZXRlLlxuICogQHBhcmFtIGRlbGV0ZWROb3RlUGF0aCAtIE9wdGlvbmFsLiBUaGUgcGF0aCBvZiB0aGUgbm90ZSB0aGF0IHRyaWdnZXJlZCB0aGUgcmVtb3ZhbC5cbiAqIEBwYXJhbSBzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHMgLSBPcHRpb25hbC4gSWYgYHRydWVgLCBhIG5vdGljZSB3aWxsIGJlIHNob3duIGZvciBlYWNoIGF0dGFjaG1lbnQgdGhhdCBpcyBzdGlsbCB1c2VkIGJ5IG90aGVyIG5vdGVzLlxuICogQHBhcmFtIHNob3VsZERlbGV0ZUVtcHR5Rm9sZGVycyAtIE9wdGlvbmFsLiBJZiBgdHJ1ZWAsIGVtcHR5IGZvbGRlcnMgd2lsbCBiZSBkZWxldGVkLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgcmVtb3ZhbCB3YXMgc3VjY2Vzc2Z1bC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGV0ZVNhZmUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckFic3RyYWN0RmlsZSwgZGVsZXRlZE5vdGVQYXRoPzogc3RyaW5nLCBzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHM/OiBib29sZWFuLCBzaG91bGREZWxldGVFbXB0eUZvbGRlcnM/OiBib29sZWFuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBpZiAoIWZpbGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgY2FuRGVsZXRlID0gaXNGaWxlKGZpbGUpIHx8IChzaG91bGREZWxldGVFbXB0eUZvbGRlcnMgPz8gdHJ1ZSk7XG5cbiAgaWYgKGlzRmlsZShmaWxlKSkge1xuICAgIGNvbnN0IGJhY2tsaW5rcyA9IGF3YWl0IGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlKGFwcCwgZmlsZSk7XG4gICAgaWYgKGRlbGV0ZWROb3RlUGF0aCkge1xuICAgICAgYmFja2xpbmtzLmNsZWFyKGRlbGV0ZWROb3RlUGF0aCk7XG4gICAgfVxuICAgIGlmIChiYWNrbGlua3MuY291bnQoKSAhPT0gMCkge1xuICAgICAgaWYgKHNob3VsZFJlcG9ydFVzZWRBdHRhY2htZW50cykge1xuICAgICAgICBuZXcgTm90aWNlKGBBdHRhY2htZW50ICR7ZmlsZS5wYXRofSBpcyBzdGlsbCB1c2VkIGJ5IG90aGVyIG5vdGVzLiBJdCB3aWxsIG5vdCBiZSBkZWxldGVkLmApO1xuICAgICAgfVxuICAgICAgY2FuRGVsZXRlID0gZmFsc2U7XG4gICAgfVxuICB9IGVsc2UgaWYgKGlzRm9sZGVyKGZpbGUpKSB7XG4gICAgY29uc3QgbGlzdGVkRmlsZXMgPSBhd2FpdCBsaXN0U2FmZShhcHAsIGZpbGUpO1xuICAgIGZvciAoY29uc3QgY2hpbGQgb2YgWy4uLmxpc3RlZEZpbGVzLmZpbGVzLCAuLi5saXN0ZWRGaWxlcy5mb2xkZXJzXSkge1xuICAgICAgY2FuRGVsZXRlICYmPSBhd2FpdCBkZWxldGVTYWZlKGFwcCwgY2hpbGQsIGRlbGV0ZWROb3RlUGF0aCwgc2hvdWxkUmVwb3J0VXNlZEF0dGFjaG1lbnRzKTtcbiAgICB9XG5cbiAgICBjYW5EZWxldGUgJiY9IGF3YWl0IGlzRW1wdHlGb2xkZXIoYXBwLCBmaWxlKTtcbiAgfVxuXG4gIGlmIChjYW5EZWxldGUpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgYXBwLmZpbGVNYW5hZ2VyLnRyYXNoRmlsZShmaWxlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhmaWxlLnBhdGgpKSB7XG4gICAgICAgIHByaW50RXJyb3IobmV3IEVycm9yKGBGYWlsZWQgdG8gZGVsZXRlICR7ZmlsZS5wYXRofWAsIHsgY2F1c2U6IGUgfSkpO1xuICAgICAgICBjYW5EZWxldGUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2FuRGVsZXRlO1xufVxuXG4vKipcbiAqIEdldHMgYW4gYXZhaWxhYmxlIHBhdGggZm9yIGEgZmlsZSBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZpbGUgdG8gZ2V0IGFuIGF2YWlsYWJsZSBwYXRoIGZvci5cbiAqIEByZXR1cm5zIFRoZSBhdmFpbGFibGUgcGF0aCBmb3IgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmFpbGFibGVQYXRoKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBleHQgPSBleHRuYW1lKHBhdGgpO1xuICByZXR1cm4gYXBwLnZhdWx0LmdldEF2YWlsYWJsZVBhdGgoam9pbihkaXJuYW1lKHBhdGgpLCBiYXNlbmFtZShwYXRoLCBleHQpKSwgZXh0LnNsaWNlKDEpKTtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYW4gYXJyYXkgb2YgTWFya2Rvd24gZmlsZXMgZnJvbSB0aGUgYXBwJ3MgdmF1bHQgYW5kIHNvcnRzIHRoZW0gYWxwaGFiZXRpY2FsbHkgYnkgdGhlaXIgZmlsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgTWFya2Rvd24gZmlsZXMgc29ydGVkIGJ5IGZpbGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1hcmtkb3duRmlsZXNTb3J0ZWQoYXBwOiBBcHApOiBURmlsZVtdIHtcbiAgcmV0dXJuIGFwcC52YXVsdC5nZXRNYXJrZG93bkZpbGVzKCkuc29ydCgoYSwgYikgPT4gYS5wYXRoLmxvY2FsZUNvbXBhcmUoYi5wYXRoKSk7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGFuIGFycmF5IG9mIGFsbCBub3RlIGZpbGVzIGZyb20gdGhlIGFwcCdzIHZhdWx0IGFuZCBzb3J0cyB0aGVtIGFscGhhYmV0aWNhbGx5IGJ5IHRoZWlyIGZpbGUgcGF0aC5cbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgYWxsIG5vdGUgZmlsZXMgaW4gdGhlIHZhdWx0IHNvcnRlZCBieSBmaWxlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROb3RlRmlsZXNTb3J0ZWQoYXBwOiBBcHApOiBURmlsZVtdIHtcbiAgcmV0dXJuIGFwcC52YXVsdC5nZXRBbGxMb2FkZWRGaWxlcygpLmZpbHRlcigoZmlsZSkgPT4gaXNGaWxlKGZpbGUpICYmIGlzTm90ZShmaWxlKSkuc29ydCgoYSwgYikgPT4gYS5wYXRoLmxvY2FsZUNvbXBhcmUoYi5wYXRoKSkgYXMgVEZpbGVbXTtcbn1cblxuLyoqXG4gKiBHZXRzIGEgc2FmZSByZW5hbWUgcGF0aCBmb3IgYSBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gb2xkUGF0aE9yRmlsZSAtIFRoZSBvbGQgcGF0aCBvciBmaWxlIHRvIHJlbmFtZS5cbiAqIEBwYXJhbSBuZXdQYXRoIC0gVGhlIG5ldyBwYXRoIHRvIHJlbmFtZSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIFRoZSBzYWZlIHJlbmFtZSBwYXRoIGZvciB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNhZmVSZW5hbWVQYXRoKGFwcDogQXBwLCBvbGRQYXRoT3JGaWxlOiBQYXRoT3JGaWxlLCBuZXdQYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBvbGRQYXRoID0gZ2V0UGF0aChvbGRQYXRoT3JGaWxlKTtcblxuICBpZiAoYXBwLnZhdWx0LmFkYXB0ZXIuaW5zZW5zaXRpdmUpIHtcbiAgICBsZXQgZm9sZGVyUGF0aCA9IGRpcm5hbWUobmV3UGF0aCk7XG4gICAgbGV0IG5vbkV4aXN0aW5nUGF0aCA9IGJhc2VuYW1lKG5ld1BhdGgpO1xuICAgIGxldCBmb2xkZXI6IG51bGwgfCBURm9sZGVyID0gbnVsbDtcbiAgICBmb3IgKDsgOykge1xuICAgICAgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgZm9sZGVyUGF0aCwgdHJ1ZSk7XG4gICAgICBpZiAoZm9sZGVyKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgbm9uRXhpc3RpbmdQYXRoID0gam9pbihiYXNlbmFtZShmb2xkZXJQYXRoKSwgbm9uRXhpc3RpbmdQYXRoKTtcbiAgICAgIGZvbGRlclBhdGggPSBkaXJuYW1lKGZvbGRlclBhdGgpO1xuICAgIH1cbiAgICBuZXdQYXRoID0gam9pbihmb2xkZXIuZ2V0UGFyZW50UHJlZml4KCksIG5vbkV4aXN0aW5nUGF0aCk7XG4gIH1cblxuICBpZiAob2xkUGF0aC50b0xvd2VyQ2FzZSgpID09PSBuZXdQYXRoLnRvTG93ZXJDYXNlKCkpIHtcbiAgICByZXR1cm4gbmV3UGF0aDtcbiAgfVxuXG4gIHJldHVybiBnZXRBdmFpbGFibGVQYXRoKGFwcCwgbmV3UGF0aCk7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgZm9sZGVyIGlzIGVtcHR5LlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgcGF0aCBvciBmb2xkZXIgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmb2xkZXIgaXMgZW1wdHkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpc0VtcHR5Rm9sZGVyKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IFBhdGhPckZvbGRlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBjb25zdCBsaXN0ZWRGaWxlcyA9IGF3YWl0IGxpc3RTYWZlKGFwcCwgZ2V0UGF0aChwYXRoT3JGb2xkZXIpKTtcbiAgcmV0dXJuIGxpc3RlZEZpbGVzLmZpbGVzLmxlbmd0aCA9PT0gMCAmJiBsaXN0ZWRGaWxlcy5mb2xkZXJzLmxlbmd0aCA9PT0gMDtcbn1cblxuLyoqXG4gKiBTYWZlbHkgbGlzdHMgdGhlIGZpbGVzIGFuZCBmb2xkZXJzIGF0IHRoZSBzcGVjaWZpZWQgcGF0aCBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgcGF0aCBvciBmb2xkZXIgdG8gbGlzdC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgYExpc3RlZEZpbGVzYCBvYmplY3QgY29udGFpbmluZyB0aGUgbGlzdGVkIGZpbGVzIGFuZCBmb2xkZXJzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbGlzdFNhZmUoYXBwOiBBcHAsIHBhdGhPckZvbGRlcjogUGF0aE9yRm9sZGVyKTogUHJvbWlzZTxMaXN0ZWRGaWxlcz4ge1xuICBjb25zdCBwYXRoID0gZ2V0UGF0aChwYXRoT3JGb2xkZXIpO1xuICBjb25zdCBFTVBUWSA9IHsgZmlsZXM6IFtdLCBmb2xkZXJzOiBbXSB9O1xuXG4gIGlmICgoYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIuc3RhdChwYXRoKSk/LnR5cGUgIT09ICdmb2xkZXInKSB7XG4gICAgcmV0dXJuIEVNUFRZO1xuICB9XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIubGlzdChwYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChhd2FpdCBhcHAudmF1bHQuZXhpc3RzKHBhdGgpKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgYSBmaWxlIHdpdGggcmV0cnkgbG9naWMsIHVwZGF0aW5nIGl0cyBjb250ZW50IGJhc2VkIG9uIGEgcHJvdmlkZWQgdmFsdWUgb3IgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZSwgdHlwaWNhbGx5IHVzZWQgZm9yIGFjY2Vzc2luZyB0aGUgdmF1bHQuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gYmUgcHJvY2Vzc2VkLiBJdCBjYW4gYmUgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBwYXRoIG9yIGEgZmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gbmV3Q29udGVudFByb3ZpZGVyIC0gQSB2YWx1ZSBwcm92aWRlciB0aGF0IHJldHVybnMgdGhlIG5ldyBjb250ZW50IGJhc2VkIG9uIHRoZSBvbGQgY29udGVudCBvZiB0aGUgZmlsZS5cbiAqIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIG9sZCBjb250ZW50IGFzIGFuIGFyZ3VtZW50IGFuZCByZXR1cm5zIHRoZSBuZXcgY29udGVudC5cbiAqIElmIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCBpdCBzaG91bGQgcmV0dXJuIGBudWxsYCBpZiB0aGUgcHJvY2VzcyBzaG91bGQgYmUgcmV0cmllZC5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbC4gQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciByZXRyeWluZyB0aGUgcHJvY2Vzcy4gSWYgbm90IHByb3ZpZGVkLCBkZWZhdWx0IG9wdGlvbnMgd2lsbCBiZSB1c2VkLlxuICpcbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIG9uY2UgdGhlIHByb2Nlc3MgaXMgY29tcGxldGUuXG4gKlxuICogQHRocm93cyBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBwcm9jZXNzIGZhaWxzIGFmdGVyIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHJldHJpZXMgb3IgdGltZW91dC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb2Nlc3MoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsIG5ld0NvbnRlbnRQcm92aWRlcjogVmFsdWVQcm92aWRlcjxudWxsIHwgc3RyaW5nLCBbc3RyaW5nXT4sIHJldHJ5T3B0aW9uczogUGFydGlhbDxSZXRyeU9wdGlvbnM+ID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcbiAgY29uc3QgREVGQVVMVF9SRVRSWV9PUFRJT05TOiBQYXJ0aWFsPFJldHJ5T3B0aW9ucz4gPSB7IHRpbWVvdXRJbk1pbGxpc2Vjb25kczogNjAwMDAgfTtcbiAgY29uc3Qgb3ZlcnJpZGRlbk9wdGlvbnM6IFBhcnRpYWw8UmV0cnlPcHRpb25zPiA9IHsgLi4uREVGQVVMVF9SRVRSWV9PUFRJT05TLCAuLi5yZXRyeU9wdGlvbnMgfTtcbiAgYXdhaXQgcmV0cnlXaXRoVGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgaWYgKGZpbGUuZGVsZXRlZCkge1xuICAgICAgdGhyb3cgbWFya3NBc1Rlcm1pbmF0ZVJldHJ5KG5ldyBFcnJvcihgRmlsZSAke2ZpbGUucGF0aH0gaXMgZGVsZXRlZGApKTtcbiAgICB9XG4gICAgY29uc3Qgb2xkQ29udGVudCA9IGF3YWl0IGFwcC52YXVsdC5yZWFkKGZpbGUpO1xuICAgIGNvbnN0IG5ld0NvbnRlbnQgPSBhd2FpdCByZXNvbHZlVmFsdWUobmV3Q29udGVudFByb3ZpZGVyLCBvbGRDb250ZW50KTtcbiAgICBpZiAobmV3Q29udGVudCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBsZXQgc3VjY2VzcyA9IHRydWU7XG4gICAgYXdhaXQgYXBwLnZhdWx0LnByb2Nlc3MoZmlsZSwgKGNvbnRlbnQpID0+IHtcbiAgICAgIGlmIChjb250ZW50ICE9PSBvbGRDb250ZW50KSB7XG4gICAgICAgIGNvbnNvbGUud2FybignQ29udGVudCBoYXMgY2hhbmdlZCBzaW5jZSBpdCB3YXMgcmVhZC4gUmV0cnlpbmcuLi4nLCB7XG4gICAgICAgICAgYWN0dWFsQ29udGVudDogY29udGVudCxcbiAgICAgICAgICBleHBlY3RlZENvbnRlbnQ6IG9sZENvbnRlbnQsXG4gICAgICAgICAgcGF0aDogZmlsZS5wYXRoXG4gICAgICAgIH0pO1xuICAgICAgICBzdWNjZXNzID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBjb250ZW50O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbmV3Q29udGVudDtcbiAgICB9KTtcblxuICAgIHJldHVybiBzdWNjZXNzO1xuICB9LCBvdmVycmlkZGVuT3B0aW9ucyk7XG59XG5cbi8qKlxuICogUmVuYW1lcyBhIGZpbGUgc2FmZWx5IGluIHRoZSB2YXVsdC5cbiAqIElmIHRoZSBuZXcgcGF0aCBhbHJlYWR5IGV4aXN0cywgdGhlIGZpbGUgd2lsbCBiZSByZW5hbWVkIHRvIGFuIGF2YWlsYWJsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gb2xkUGF0aE9yRmlsZSAtIFRoZSBvbGQgcGF0aCBvciBmaWxlIHRvIHJlbmFtZS5cbiAqIEBwYXJhbSBuZXdQYXRoIC0gVGhlIG5ldyBwYXRoIHRvIHJlbmFtZSB0aGUgZmlsZSB0by5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgcGF0aCBvZiB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmFtZVNhZmUoYXBwOiBBcHAsIG9sZFBhdGhPckZpbGU6IFBhdGhPckZpbGUsIG5ld1BhdGg6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gIGNvbnN0IG9sZEZpbGUgPSBnZXRGaWxlKGFwcCwgb2xkUGF0aE9yRmlsZSwgZmFsc2UsIHRydWUpO1xuXG4gIGNvbnN0IG5ld0F2YWlsYWJsZVBhdGggPSBnZXRTYWZlUmVuYW1lUGF0aChhcHAsIG9sZFBhdGhPckZpbGUsIG5ld1BhdGgpO1xuXG4gIGlmIChvbGRGaWxlLnBhdGgudG9Mb3dlckNhc2UoKSA9PT0gbmV3QXZhaWxhYmxlUGF0aC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgaWYgKG9sZEZpbGUucGF0aCAhPT0gbmV3UGF0aCkge1xuICAgICAgYXdhaXQgYXBwLnZhdWx0LnJlbmFtZShvbGRGaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ld0F2YWlsYWJsZVBhdGg7XG4gIH1cblxuICBjb25zdCBuZXdGb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChuZXdBdmFpbGFibGVQYXRoKTtcbiAgYXdhaXQgY3JlYXRlRm9sZGVyU2FmZShhcHAsIG5ld0ZvbGRlclBhdGgpO1xuXG4gIHRyeSB7XG4gICAgYXdhaXQgYXBwLnZhdWx0LnJlbmFtZShvbGRGaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhuZXdBdmFpbGFibGVQYXRoKSB8fCBhd2FpdCBhcHAudmF1bHQuZXhpc3RzKG9sZEZpbGUucGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5ld0F2YWlsYWJsZVBhdGg7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlQSxzQkFJTztBQUNQLDZCQUFpQztBQVVqQyxtQkFHTztBQUNQLG1CQUEyQjtBQUMzQixzQkFBMEI7QUFDMUIsa0JBS087QUFDUCwyQkFBNkI7QUFDN0Isd0JBVU87QUFDUCwyQkFBd0M7QUF0RHhDLElBQUksWUFBWSxXQUFXLFNBQVMsS0FBSztBQUFBLEVBQ3ZDLE9BQU8sTUFBSTtBQUFBLEVBQ1gsT0FBTyxDQUFDO0FBQUEsRUFDUixZQUFZO0FBQ2Q7QUE0REEsZUFBc0IsU0FBUyxLQUFVLGVBQTJCLFNBQWtDO0FBQ3BHLFFBQU0sV0FBTywyQkFBUSxLQUFLLGFBQWE7QUFFdkMsUUFBTSxvQkFBZ0IseUNBQWlCLE9BQU87QUFDOUMsUUFBTSxpQkFBaUIsS0FBSyxhQUFhO0FBRXpDLFFBQU0sbUJBQW1CLGlCQUFpQixLQUFLLE9BQU87QUFFdEQsTUFBSTtBQUNGLFVBQU0sSUFB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
@@ -3,7 +3,9 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
3
  if you want to view the source, please visit the github repository of this plugin
4
4
  */
5
5
 
6
- (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return module2.__esModule&&module2.default?module2.default:module2},__require)})()
6
+ function __extractDefault(module2){return module2&&module2.__esModule&&module2.default?module2.default:module2}
7
+
8
+ (function patchRequireEsmDefault(){const __require=require;require=Object.assign(id=>{const module2=__require(id)??{};return __extractDefault(module2)},__require)})()
7
9
 
8
10
  "use strict";
9
11
  var __create = Object.create;
@@ -61,30 +63,30 @@ __export(obsidian_exports, {
61
63
  Vault: () => Vault
62
64
  });
63
65
  module.exports = __toCommonJS(obsidian_exports);
64
- var App = __toESM(require('./App.cjs'), 1);
65
- var AttachmentPath = __toESM(require('./AttachmentPath.cjs'), 1);
66
- var Backlink = __toESM(require('./Backlink.cjs'), 1);
67
- var Callout = __toESM(require('./Callout.cjs'), 1);
68
- var Dataview = __toESM(require('./Dataview.cjs'), 1);
69
- var DataviewLink = __toESM(require('./DataviewLink.cjs'), 1);
70
- var FileChange = __toESM(require('./FileChange.cjs'), 1);
71
- var FileManager = __toESM(require('./FileManager.cjs'), 1);
72
- var FileSystem = __toESM(require('./FileSystem.cjs'), 1);
73
- var FrontMatter = __toESM(require('./FrontMatter.cjs'), 1);
74
- var Link = __toESM(require('./Link.cjs'), 1);
75
- var Logger = __toESM(require('./Logger.cjs'), 1);
76
- var Markdown = __toESM(require('./Markdown.cjs'), 1);
77
- var MarkdownCodeBlockProcessor = __toESM(require('./MarkdownCodeBlockProcessor.cjs'), 1);
78
- var MarkdownView = __toESM(require('./MarkdownView.cjs'), 1);
79
- var MetadataCache = __toESM(require('./MetadataCache.cjs'), 1);
80
- var Modal = __toESM(require('./Modal/index.cjs'), 1);
81
- var ObsidianSettings = __toESM(require('./ObsidianSettings.cjs'), 1);
82
- var Plugin = __toESM(require('./Plugin/index.cjs'), 1);
83
- var Queue = __toESM(require('./Queue.cjs'), 1);
84
- var Reference = __toESM(require('./Reference.cjs'), 1);
85
- var RenameDeleteHandler = __toESM(require('./RenameDeleteHandler.cjs'), 1);
86
- var ResourceUrl = __toESM(require('./ResourceUrl.cjs'), 1);
87
- var Vault = __toESM(require('./Vault.cjs'), 1);
66
+ var App = __toESM(__extractDefault(require('./App.cjs')), 1);
67
+ var AttachmentPath = __toESM(__extractDefault(require('./AttachmentPath.cjs')), 1);
68
+ var Backlink = __toESM(__extractDefault(require('./Backlink.cjs')), 1);
69
+ var Callout = __toESM(__extractDefault(require('./Callout.cjs')), 1);
70
+ var Dataview = __toESM(__extractDefault(require('./Dataview.cjs')), 1);
71
+ var DataviewLink = __toESM(__extractDefault(require('./DataviewLink.cjs')), 1);
72
+ var FileChange = __toESM(__extractDefault(require('./FileChange.cjs')), 1);
73
+ var FileManager = __toESM(__extractDefault(require('./FileManager.cjs')), 1);
74
+ var FileSystem = __toESM(__extractDefault(require('./FileSystem.cjs')), 1);
75
+ var FrontMatter = __toESM(__extractDefault(require('./FrontMatter.cjs')), 1);
76
+ var Link = __toESM(__extractDefault(require('./Link.cjs')), 1);
77
+ var Logger = __toESM(__extractDefault(require('./Logger.cjs')), 1);
78
+ var Markdown = __toESM(__extractDefault(require('./Markdown.cjs')), 1);
79
+ var MarkdownCodeBlockProcessor = __toESM(__extractDefault(require('./MarkdownCodeBlockProcessor.cjs')), 1);
80
+ var MarkdownView = __toESM(__extractDefault(require('./MarkdownView.cjs')), 1);
81
+ var MetadataCache = __toESM(__extractDefault(require('./MetadataCache.cjs')), 1);
82
+ var Modal = __toESM(__extractDefault(require('./Modal/index.cjs')), 1);
83
+ var ObsidianSettings = __toESM(__extractDefault(require('./ObsidianSettings.cjs')), 1);
84
+ var Plugin = __toESM(__extractDefault(require('./Plugin/index.cjs')), 1);
85
+ var Queue = __toESM(__extractDefault(require('./Queue.cjs')), 1);
86
+ var Reference = __toESM(__extractDefault(require('./Reference.cjs')), 1);
87
+ var RenameDeleteHandler = __toESM(__extractDefault(require('./RenameDeleteHandler.cjs')), 1);
88
+ var ResourceUrl = __toESM(__extractDefault(require('./ResourceUrl.cjs')), 1);
89
+ var Vault = __toESM(__extractDefault(require('./Vault.cjs')), 1);
88
90
  // Annotate the CommonJS export names for ESM import in node:
89
91
  0 && (module.exports = {
90
92
  App,
@@ -112,4 +114,4 @@ var Vault = __toESM(require('./Vault.cjs'), 1);
112
114
  ResourceUrl,
113
115
  Vault
114
116
  });
115
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBUSElTIElTIEEgR0VORVJBVEVEL0JVTkRMRUQgRklMRSBCWSBCVUlMRCBTQ1JJUFQgKi9cblxuZXhwb3J0ICogYXMgQXBwIGZyb20gJy4vQXBwLnRzJztcbmV4cG9ydCAqIGFzIEF0dGFjaG1lbnRQYXRoIGZyb20gJy4vQXR0YWNobWVudFBhdGgudHMnO1xuZXhwb3J0ICogYXMgQmFja2xpbmsgZnJvbSAnLi9CYWNrbGluay50cyc7XG5leHBvcnQgKiBhcyBDYWxsb3V0IGZyb20gJy4vQ2FsbG91dC50cyc7XG5leHBvcnQgKiBhcyBEYXRhdmlldyBmcm9tICcuL0RhdGF2aWV3LnRzJztcbmV4cG9ydCAqIGFzIERhdGF2aWV3TGluayBmcm9tICcuL0RhdGF2aWV3TGluay50cyc7XG5leHBvcnQgKiBhcyBGaWxlQ2hhbmdlIGZyb20gJy4vRmlsZUNoYW5nZS50cyc7XG5leHBvcnQgKiBhcyBGaWxlTWFuYWdlciBmcm9tICcuL0ZpbGVNYW5hZ2VyLnRzJztcbmV4cG9ydCAqIGFzIEZpbGVTeXN0ZW0gZnJvbSAnLi9GaWxlU3lzdGVtLnRzJztcbmV4cG9ydCAqIGFzIEZyb250TWF0dGVyIGZyb20gJy4vRnJvbnRNYXR0ZXIudHMnO1xuZXhwb3J0ICogYXMgTGluayBmcm9tICcuL0xpbmsudHMnO1xuZXhwb3J0ICogYXMgTG9nZ2VyIGZyb20gJy4vTG9nZ2VyLnRzJztcbmV4cG9ydCAqIGFzIE1hcmtkb3duIGZyb20gJy4vTWFya2Rvd24udHMnO1xuZXhwb3J0ICogYXMgTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IgZnJvbSAnLi9NYXJrZG93bkNvZGVCbG9ja1Byb2Nlc3Nvci50cyc7XG5leHBvcnQgKiBhcyBNYXJrZG93blZpZXcgZnJvbSAnLi9NYXJrZG93blZpZXcudHMnO1xuZXhwb3J0ICogYXMgTWV0YWRhdGFDYWNoZSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuZXhwb3J0ICogYXMgTW9kYWwgZnJvbSAnLi9Nb2RhbC9pbmRleC50cyc7XG5leHBvcnQgKiBhcyBPYnNpZGlhblNldHRpbmdzIGZyb20gJy4vT2JzaWRpYW5TZXR0aW5ncy50cyc7XG5leHBvcnQgKiBhcyBQbHVnaW4gZnJvbSAnLi9QbHVnaW4vaW5kZXgudHMnO1xuZXhwb3J0ICogYXMgUXVldWUgZnJvbSAnLi9RdWV1ZS50cyc7XG5leHBvcnQgKiBhcyBSZWZlcmVuY2UgZnJvbSAnLi9SZWZlcmVuY2UudHMnO1xuZXhwb3J0ICogYXMgUmVuYW1lRGVsZXRlSGFuZGxlciBmcm9tICcuL1JlbmFtZURlbGV0ZUhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgUmVzb3VyY2VVcmwgZnJvbSAnLi9SZXNvdXJjZVVybC50cyc7XG5leHBvcnQgKiBhcyBWYXVsdCBmcm9tICcuL1ZhdWx0LnRzJztcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFQSxVQUFxQjtBQUNyQixxQkFBZ0M7QUFDaEMsZUFBMEI7QUFDMUIsY0FBeUI7QUFDekIsZUFBMEI7QUFDMUIsbUJBQThCO0FBQzlCLGlCQUE0QjtBQUM1QixrQkFBNkI7QUFDN0IsaUJBQTRCO0FBQzVCLGtCQUE2QjtBQUM3QixXQUFzQjtBQUN0QixhQUF3QjtBQUN4QixlQUEwQjtBQUMxQixpQ0FBNEM7QUFDNUMsbUJBQThCO0FBQzlCLG9CQUErQjtBQUMvQixZQUF1QjtBQUN2Qix1QkFBa0M7QUFDbEMsYUFBd0I7QUFDeEIsWUFBdUI7QUFDdkIsZ0JBQTJCO0FBQzNCLDBCQUFxQztBQUNyQyxrQkFBNkI7QUFDN0IsWUFBdUI7IiwKICAibmFtZXMiOiBbXQp9Cg==
117
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBUSElTIElTIEEgR0VORVJBVEVEL0JVTkRMRUQgRklMRSBCWSBCVUlMRCBTQ1JJUFQgKi9cblxuZXhwb3J0ICogYXMgQXBwIGZyb20gJy4vQXBwLnRzJztcbmV4cG9ydCAqIGFzIEF0dGFjaG1lbnRQYXRoIGZyb20gJy4vQXR0YWNobWVudFBhdGgudHMnO1xuZXhwb3J0ICogYXMgQmFja2xpbmsgZnJvbSAnLi9CYWNrbGluay50cyc7XG5leHBvcnQgKiBhcyBDYWxsb3V0IGZyb20gJy4vQ2FsbG91dC50cyc7XG5leHBvcnQgKiBhcyBEYXRhdmlldyBmcm9tICcuL0RhdGF2aWV3LnRzJztcbmV4cG9ydCAqIGFzIERhdGF2aWV3TGluayBmcm9tICcuL0RhdGF2aWV3TGluay50cyc7XG5leHBvcnQgKiBhcyBGaWxlQ2hhbmdlIGZyb20gJy4vRmlsZUNoYW5nZS50cyc7XG5leHBvcnQgKiBhcyBGaWxlTWFuYWdlciBmcm9tICcuL0ZpbGVNYW5hZ2VyLnRzJztcbmV4cG9ydCAqIGFzIEZpbGVTeXN0ZW0gZnJvbSAnLi9GaWxlU3lzdGVtLnRzJztcbmV4cG9ydCAqIGFzIEZyb250TWF0dGVyIGZyb20gJy4vRnJvbnRNYXR0ZXIudHMnO1xuZXhwb3J0ICogYXMgTGluayBmcm9tICcuL0xpbmsudHMnO1xuZXhwb3J0ICogYXMgTG9nZ2VyIGZyb20gJy4vTG9nZ2VyLnRzJztcbmV4cG9ydCAqIGFzIE1hcmtkb3duIGZyb20gJy4vTWFya2Rvd24udHMnO1xuZXhwb3J0ICogYXMgTWFya2Rvd25Db2RlQmxvY2tQcm9jZXNzb3IgZnJvbSAnLi9NYXJrZG93bkNvZGVCbG9ja1Byb2Nlc3Nvci50cyc7XG5leHBvcnQgKiBhcyBNYXJrZG93blZpZXcgZnJvbSAnLi9NYXJrZG93blZpZXcudHMnO1xuZXhwb3J0ICogYXMgTWV0YWRhdGFDYWNoZSBmcm9tICcuL01ldGFkYXRhQ2FjaGUudHMnO1xuZXhwb3J0ICogYXMgTW9kYWwgZnJvbSAnLi9Nb2RhbC9pbmRleC50cyc7XG5leHBvcnQgKiBhcyBPYnNpZGlhblNldHRpbmdzIGZyb20gJy4vT2JzaWRpYW5TZXR0aW5ncy50cyc7XG5leHBvcnQgKiBhcyBQbHVnaW4gZnJvbSAnLi9QbHVnaW4vaW5kZXgudHMnO1xuZXhwb3J0ICogYXMgUXVldWUgZnJvbSAnLi9RdWV1ZS50cyc7XG5leHBvcnQgKiBhcyBSZWZlcmVuY2UgZnJvbSAnLi9SZWZlcmVuY2UudHMnO1xuZXhwb3J0ICogYXMgUmVuYW1lRGVsZXRlSGFuZGxlciBmcm9tICcuL1JlbmFtZURlbGV0ZUhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgUmVzb3VyY2VVcmwgZnJvbSAnLi9SZXNvdXJjZVVybC50cyc7XG5leHBvcnQgKiBhcyBWYXVsdCBmcm9tICcuL1ZhdWx0LnRzJztcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUVBLFVBQXFCO0FBQ3JCLHFCQUFnQztBQUNoQyxlQUEwQjtBQUMxQixjQUF5QjtBQUN6QixlQUEwQjtBQUMxQixtQkFBOEI7QUFDOUIsaUJBQTRCO0FBQzVCLGtCQUE2QjtBQUM3QixpQkFBNEI7QUFDNUIsa0JBQTZCO0FBQzdCLFdBQXNCO0FBQ3RCLGFBQXdCO0FBQ3hCLGVBQTBCO0FBQzFCLGlDQUE0QztBQUM1QyxtQkFBOEI7QUFDOUIsb0JBQStCO0FBQy9CLFlBQXVCO0FBQ3ZCLHVCQUFrQztBQUNsQyxhQUF3QjtBQUN4QixZQUF1QjtBQUN2QixnQkFBMkI7QUFDM0IsMEJBQXFDO0FBQ3JDLGtCQUE2QjtBQUM3QixZQUF1QjsiLAogICJuYW1lcyI6IFtdCn0K