obsidian-dev-utils 22.1.1-beta.24 → 22.1.1-beta.25
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.
- package/CHANGELOG.md +14 -0
- package/dist/lib/cjs/@types/debug.d.cts +1 -0
- package/dist/lib/cjs/Array.cjs +1 -1
- package/dist/lib/cjs/Array.d.cts +5 -0
- package/dist/lib/cjs/Async.cjs +1 -1
- package/dist/lib/cjs/Async.d.cts +2 -1
- package/dist/lib/cjs/AsyncEvents.cjs +1 -1
- package/dist/lib/cjs/AsyncEvents.d.cts +5 -0
- package/dist/lib/cjs/Blob.cjs +1 -1
- package/dist/lib/cjs/Blob.d.cts +2 -1
- package/dist/lib/cjs/CssClass.cjs +1 -1
- package/dist/lib/cjs/CssClass.d.cts +2 -1
- package/dist/lib/cjs/Debug.cjs +1 -1
- package/dist/lib/cjs/Debug.d.cts +2 -1
- package/dist/lib/cjs/DebugController.cjs +1 -1
- package/dist/lib/cjs/DebugController.d.cts +1 -0
- package/dist/lib/cjs/Enum.cjs +1 -1
- package/dist/lib/cjs/Enum.d.cts +2 -1
- package/dist/lib/cjs/Error.cjs +1 -1
- package/dist/lib/cjs/Error.d.cts +3 -2
- package/dist/lib/cjs/Function.cjs +1 -1
- package/dist/lib/cjs/Function.d.cts +2 -1
- package/dist/lib/cjs/HTMLElement.cjs +1 -1
- package/dist/lib/cjs/HTMLElement.d.cts +3 -1
- package/dist/lib/cjs/Library.cjs +2 -2
- package/dist/lib/cjs/Library.d.cts +2 -1
- package/dist/lib/cjs/Object.cjs +1 -1
- package/dist/lib/cjs/Object.d.cts +2 -1
- package/dist/lib/cjs/Path.cjs +1 -1
- package/dist/lib/cjs/Path.d.cts +2 -1
- package/dist/lib/cjs/RegExp.cjs +1 -1
- package/dist/lib/cjs/RegExp.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/CliUtils.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/CodeGenerator.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.cts +1 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.cts +1 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.cts +1 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +13 -10
- package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.d.cts +2 -3
- package/dist/lib/cjs/ScriptUtils/Exec.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Exec.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/Fs.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Fs.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/JSON.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/JSON.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/NodeModules.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/Npm.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Npm.d.cts +2 -3
- package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/NpmPublish.d.cts +3 -1
- package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/NpmRun.d.cts +5 -0
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +1 -10
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +42 -61
- package/dist/lib/cjs/ScriptUtils/Root.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Root.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/build.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/build.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/cli.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/cli.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.d.cts +5 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.d.cts +5 -0
- package/dist/lib/cjs/ScriptUtils/format.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/format.d.cts +3 -1
- package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/spellcheck.d.cts +2 -1
- package/dist/lib/cjs/ScriptUtils/version.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/version.d.cts +2 -1
- package/dist/lib/cjs/String.cjs +1 -1
- package/dist/lib/cjs/String.d.cts +2 -1
- package/dist/lib/cjs/Transformers/DateTransformer.cjs +3 -1
- package/dist/lib/cjs/Transformers/DateTransformer.d.cts +4 -1
- package/dist/lib/cjs/Transformers/DurationTransformer.cjs +5 -1
- package/dist/lib/cjs/Transformers/DurationTransformer.d.cts +6 -1
- package/dist/lib/cjs/Transformers/GroupTransformer.cjs +7 -4
- package/dist/lib/cjs/Transformers/GroupTransformer.d.cts +9 -5
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +3 -1
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.d.cts +4 -1
- package/dist/lib/cjs/Transformers/Transformer.cjs +1 -1
- package/dist/lib/cjs/Transformers/Transformer.d.cts +2 -1
- package/dist/lib/cjs/Transformers/TypedTransformer.cjs +1 -1
- package/dist/lib/cjs/Transformers/TypedTransformer.d.cts +2 -1
- package/dist/lib/cjs/Type.cjs +1 -1
- package/dist/lib/cjs/Type.d.cts +5 -0
- package/dist/lib/cjs/ValueProvider.cjs +1 -1
- package/dist/lib/cjs/ValueProvider.d.cts +2 -1
- package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +1 -1
- package/dist/lib/cjs/codemirror/StateFieldSpec.d.cts +2 -1
- package/dist/lib/cjs/obsidian/App.cjs +1 -1
- package/dist/lib/cjs/obsidian/App.d.cts +2 -1
- package/dist/lib/cjs/obsidian/AttachmentPath.cjs +1 -1
- package/dist/lib/cjs/obsidian/AttachmentPath.d.cts +3 -1
- package/dist/lib/cjs/obsidian/Backlink.cjs +1 -1
- package/dist/lib/cjs/obsidian/Backlink.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Callout.cjs +1 -1
- package/dist/lib/cjs/obsidian/Callout.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/CheckboxComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/CheckboxComponent.d.cts +5 -0
- package/dist/lib/cjs/obsidian/Components/DateComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/DateComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/DateTimeComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/DateTimeComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/EmailComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/EmailComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/FileComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/FileComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/MonthComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/MonthComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/MultipleDropdownComponent.cjs +3 -1
- package/dist/lib/cjs/obsidian/Components/MultipleDropdownComponent.d.cts +4 -1
- package/dist/lib/cjs/obsidian/Components/MultipleEmailComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/MultipleEmailComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/MultipleFileComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/MultipleFileComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/MultipleTextComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/MultipleTextComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/NumberComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/NumberComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/TextBasedComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/TextBasedComponent.d.cts +5 -0
- package/dist/lib/cjs/obsidian/Components/TimeComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/TimeComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/TriStateCheckboxComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/TriStateCheckboxComponent.d.cts +5 -0
- package/dist/lib/cjs/obsidian/Components/TypedDropdownComponent.cjs +3 -1
- package/dist/lib/cjs/obsidian/Components/TypedDropdownComponent.d.cts +7 -0
- package/dist/lib/cjs/obsidian/Components/TypedMultipleDropdownComponent.cjs +3 -1
- package/dist/lib/cjs/obsidian/Components/TypedMultipleDropdownComponent.d.cts +4 -1
- package/dist/lib/cjs/obsidian/Components/TypedRangeTextComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/TypedRangeTextComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/TypedTextComponent.cjs +3 -1
- package/dist/lib/cjs/obsidian/Components/TypedTextComponent.d.cts +4 -1
- package/dist/lib/cjs/obsidian/Components/UrlComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/UrlComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/ValidatorComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/ValidatorComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/ValueComponentWithChangeTracking.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/ValueComponentWithChangeTracking.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Components/WeekComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/WeekComponent.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Dataview.cjs +1 -1
- package/dist/lib/cjs/obsidian/Dataview.d.cts +3 -4
- package/dist/lib/cjs/obsidian/DataviewLink.cjs +1 -1
- package/dist/lib/cjs/obsidian/DataviewLink.d.cts +2 -1
- package/dist/lib/cjs/obsidian/FileChange.cjs +1 -1
- package/dist/lib/cjs/obsidian/FileChange.d.cts +2 -1
- package/dist/lib/cjs/obsidian/FileManager.cjs +1 -1
- package/dist/lib/cjs/obsidian/FileManager.d.cts +2 -1
- package/dist/lib/cjs/obsidian/FileSystem.cjs +1 -1
- package/dist/lib/cjs/obsidian/FileSystem.d.cts +3 -1
- package/dist/lib/cjs/obsidian/Frontmatter.cjs +1 -1
- package/dist/lib/cjs/obsidian/Frontmatter.d.cts +5 -1
- package/dist/lib/cjs/obsidian/Link.cjs +1 -1
- package/dist/lib/cjs/obsidian/Link.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Logger.cjs +1 -1
- package/dist/lib/cjs/obsidian/Logger.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Loop.cjs +1 -1
- package/dist/lib/cjs/obsidian/Loop.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Markdown.cjs +1 -1
- package/dist/lib/cjs/obsidian/Markdown.d.cts +2 -1
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +1 -1
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.d.cts +2 -1
- package/dist/lib/cjs/obsidian/MarkdownView.cjs +1 -1
- package/dist/lib/cjs/obsidian/MarkdownView.d.cts +2 -1
- package/dist/lib/cjs/obsidian/MetadataCache.cjs +1 -1
- package/dist/lib/cjs/obsidian/MetadataCache.d.cts +4 -2
- package/dist/lib/cjs/obsidian/Modals/Alert.cjs +1 -1
- package/dist/lib/cjs/obsidian/Modals/Alert.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +1 -1
- package/dist/lib/cjs/obsidian/Modals/Confirm.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +1 -1
- package/dist/lib/cjs/obsidian/Modals/ModalBase.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +1 -1
- package/dist/lib/cjs/obsidian/Modals/Prompt.d.cts +3 -1
- package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +1 -1
- package/dist/lib/cjs/obsidian/Modals/SelectItem.d.cts +3 -1
- package/dist/lib/cjs/obsidian/MonkeyAround.cjs +1 -1
- package/dist/lib/cjs/obsidian/MonkeyAround.d.cts +3 -1
- package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +1 -1
- package/dist/lib/cjs/obsidian/ObsidianSettings.d.cts +3 -0
- package/dist/lib/cjs/obsidian/Pdf.cjs +1 -1
- package/dist/lib/cjs/obsidian/Pdf.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +6 -2
- package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +38 -29
- package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/Plugin.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +1 -7
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.d.cts +2 -7
- package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginContext.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginId.d.cts +2 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +1 -3
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.d.cts +5 -2
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +4 -1
- package/dist/lib/cjs/obsidian/Queue.cjs +1 -1
- package/dist/lib/cjs/obsidian/Queue.d.cts +2 -1
- package/dist/lib/cjs/obsidian/React/AppContext.cjs +3 -3
- package/dist/lib/cjs/obsidian/React/AppContext.d.cts +8 -1
- package/dist/lib/cjs/obsidian/Reference.cjs +1 -1
- package/dist/lib/cjs/obsidian/Reference.d.cts +2 -1
- package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +1 -1
- package/dist/lib/cjs/obsidian/RenameDeleteHandler.d.cts +3 -2
- package/dist/lib/cjs/obsidian/ResourceUrl.cjs +1 -1
- package/dist/lib/cjs/obsidian/ResourceUrl.d.cts +2 -1
- package/dist/lib/cjs/obsidian/SettingEx.cjs +1 -1
- package/dist/lib/cjs/obsidian/SettingEx.d.cts +2 -1
- package/dist/lib/cjs/obsidian/ValidationMessage.cjs +1 -1
- package/dist/lib/cjs/obsidian/ValidationMessage.d.cts +5 -0
- package/dist/lib/cjs/obsidian/Vault.cjs +1 -1
- package/dist/lib/cjs/obsidian/Vault.d.cts +6 -1
- package/dist/lib/cjs/obsidian/VaultEx.cjs +1 -1
- package/dist/lib/cjs/obsidian/VaultEx.d.cts +2 -1
- package/dist/lib/cjs/url.cjs +1 -1
- package/dist/lib/cjs/url.d.cts +2 -1
- package/dist/lib/esm/@types/debug.d.mts +1 -0
- package/dist/lib/esm/Array.d.mts +5 -0
- package/dist/lib/esm/Array.mjs +1 -1
- package/dist/lib/esm/Async.d.mts +2 -1
- package/dist/lib/esm/Async.mjs +1 -1
- package/dist/lib/esm/AsyncEvents.d.mts +5 -0
- package/dist/lib/esm/AsyncEvents.mjs +1 -1
- package/dist/lib/esm/Blob.d.mts +2 -1
- package/dist/lib/esm/Blob.mjs +1 -1
- package/dist/lib/esm/CssClass.d.mts +2 -1
- package/dist/lib/esm/CssClass.mjs +1 -1
- package/dist/lib/esm/Debug.d.mts +2 -1
- package/dist/lib/esm/Debug.mjs +1 -1
- package/dist/lib/esm/DebugController.d.mts +1 -0
- package/dist/lib/esm/Enum.d.mts +2 -1
- package/dist/lib/esm/Enum.mjs +1 -1
- package/dist/lib/esm/Error.d.mts +3 -2
- package/dist/lib/esm/Error.mjs +1 -1
- package/dist/lib/esm/Function.d.mts +2 -1
- package/dist/lib/esm/Function.mjs +1 -1
- package/dist/lib/esm/HTMLElement.d.mts +3 -1
- package/dist/lib/esm/HTMLElement.mjs +1 -1
- package/dist/lib/esm/Library.d.mts +2 -1
- package/dist/lib/esm/Library.mjs +2 -2
- package/dist/lib/esm/Object.d.mts +2 -1
- package/dist/lib/esm/Object.mjs +1 -1
- package/dist/lib/esm/Path.d.mts +2 -1
- package/dist/lib/esm/Path.mjs +1 -1
- package/dist/lib/esm/RegExp.d.mts +2 -1
- package/dist/lib/esm/RegExp.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/CliUtils.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/CliUtils.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/CodeGenerator.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/CodeGenerator.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.mts +1 -0
- package/dist/lib/esm/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.mts +1 -0
- package/dist/lib/esm/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.mts +1 -0
- package/dist/lib/esm/ScriptUtils/ESLint/ESLint.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.d.mts +2 -3
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +13 -10
- package/dist/lib/esm/ScriptUtils/Exec.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/Exec.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/Fs.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/Fs.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/JSON.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/JSON.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/NodeModules.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/NodeModules.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/Npm.d.mts +2 -3
- package/dist/lib/esm/ScriptUtils/Npm.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/NpmPublish.d.mts +3 -1
- package/dist/lib/esm/ScriptUtils/NpmPublish.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/NpmRun.d.mts +5 -0
- package/dist/lib/esm/ScriptUtils/NpmRun.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +42 -61
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +1 -10
- package/dist/lib/esm/ScriptUtils/Root.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/Root.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/build.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/build.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/cli.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/cli.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/Dependency.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.d.mts +5 -0
- package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.d.mts +5 -0
- package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/format.d.mts +3 -1
- package/dist/lib/esm/ScriptUtils/format.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/spellcheck.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/spellcheck.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/version.d.mts +2 -1
- package/dist/lib/esm/ScriptUtils/version.mjs +1 -1
- package/dist/lib/esm/String.d.mts +2 -1
- package/dist/lib/esm/String.mjs +1 -1
- package/dist/lib/esm/Transformers/DateTransformer.d.mts +4 -1
- package/dist/lib/esm/Transformers/DateTransformer.mjs +3 -1
- package/dist/lib/esm/Transformers/DurationTransformer.d.mts +6 -1
- package/dist/lib/esm/Transformers/DurationTransformer.mjs +5 -1
- package/dist/lib/esm/Transformers/GroupTransformer.d.mts +9 -5
- package/dist/lib/esm/Transformers/GroupTransformer.mjs +7 -4
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.d.mts +4 -1
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.mjs +3 -1
- package/dist/lib/esm/Transformers/Transformer.d.mts +2 -1
- package/dist/lib/esm/Transformers/Transformer.mjs +1 -1
- package/dist/lib/esm/Transformers/TypedTransformer.d.mts +2 -1
- package/dist/lib/esm/Transformers/TypedTransformer.mjs +1 -1
- package/dist/lib/esm/Type.d.mts +5 -0
- package/dist/lib/esm/ValueProvider.d.mts +2 -1
- package/dist/lib/esm/ValueProvider.mjs +1 -1
- package/dist/lib/esm/codemirror/StateFieldSpec.d.mts +2 -1
- package/dist/lib/esm/obsidian/App.d.mts +2 -1
- package/dist/lib/esm/obsidian/App.mjs +1 -1
- package/dist/lib/esm/obsidian/AttachmentPath.d.mts +3 -1
- package/dist/lib/esm/obsidian/AttachmentPath.mjs +1 -1
- package/dist/lib/esm/obsidian/Backlink.d.mts +2 -1
- package/dist/lib/esm/obsidian/Backlink.mjs +1 -1
- package/dist/lib/esm/obsidian/Callout.d.mts +2 -1
- package/dist/lib/esm/obsidian/Callout.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/CheckboxComponent.d.mts +5 -0
- package/dist/lib/esm/obsidian/Components/CheckboxComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/DateComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/DateComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/DateTimeComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/DateTimeComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/EmailComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/EmailComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/FileComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/FileComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/MonthComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/MonthComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/MultipleDropdownComponent.d.mts +4 -1
- package/dist/lib/esm/obsidian/Components/MultipleDropdownComponent.mjs +3 -1
- package/dist/lib/esm/obsidian/Components/MultipleEmailComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/MultipleEmailComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/MultipleFileComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/MultipleFileComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/MultipleTextComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/MultipleTextComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/NumberComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/NumberComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/TextBasedComponent.d.mts +5 -0
- package/dist/lib/esm/obsidian/Components/TextBasedComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/TimeComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/TimeComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/TriStateCheckboxComponent.d.mts +5 -0
- package/dist/lib/esm/obsidian/Components/TriStateCheckboxComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/TypedDropdownComponent.d.mts +7 -0
- package/dist/lib/esm/obsidian/Components/TypedDropdownComponent.mjs +3 -1
- package/dist/lib/esm/obsidian/Components/TypedMultipleDropdownComponent.d.mts +4 -1
- package/dist/lib/esm/obsidian/Components/TypedMultipleDropdownComponent.mjs +3 -1
- package/dist/lib/esm/obsidian/Components/TypedRangeTextComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/TypedRangeTextComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/TypedTextComponent.d.mts +4 -1
- package/dist/lib/esm/obsidian/Components/TypedTextComponent.mjs +3 -1
- package/dist/lib/esm/obsidian/Components/UrlComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/UrlComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/ValidatorComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/ValidatorComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/ValueComponentWithChangeTracking.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/WeekComponent.d.mts +2 -1
- package/dist/lib/esm/obsidian/Components/WeekComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Dataview.d.mts +3 -4
- package/dist/lib/esm/obsidian/Dataview.mjs +1 -1
- package/dist/lib/esm/obsidian/DataviewLink.d.mts +2 -1
- package/dist/lib/esm/obsidian/DataviewLink.mjs +1 -1
- package/dist/lib/esm/obsidian/FileChange.d.mts +2 -1
- package/dist/lib/esm/obsidian/FileChange.mjs +1 -1
- package/dist/lib/esm/obsidian/FileManager.d.mts +2 -1
- package/dist/lib/esm/obsidian/FileManager.mjs +1 -1
- package/dist/lib/esm/obsidian/FileSystem.d.mts +3 -1
- package/dist/lib/esm/obsidian/FileSystem.mjs +1 -1
- package/dist/lib/esm/obsidian/Frontmatter.d.mts +5 -1
- package/dist/lib/esm/obsidian/Frontmatter.mjs +1 -1
- package/dist/lib/esm/obsidian/Link.d.mts +2 -1
- package/dist/lib/esm/obsidian/Link.mjs +1 -1
- package/dist/lib/esm/obsidian/Logger.d.mts +2 -1
- package/dist/lib/esm/obsidian/Logger.mjs +1 -1
- package/dist/lib/esm/obsidian/Loop.d.mts +2 -1
- package/dist/lib/esm/obsidian/Loop.mjs +1 -1
- package/dist/lib/esm/obsidian/Markdown.d.mts +2 -1
- package/dist/lib/esm/obsidian/Markdown.mjs +1 -1
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.d.mts +2 -1
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +1 -1
- package/dist/lib/esm/obsidian/MarkdownView.d.mts +2 -1
- package/dist/lib/esm/obsidian/MarkdownView.mjs +1 -1
- package/dist/lib/esm/obsidian/MetadataCache.d.mts +4 -2
- package/dist/lib/esm/obsidian/MetadataCache.mjs +1 -1
- package/dist/lib/esm/obsidian/Modals/Alert.d.mts +2 -1
- package/dist/lib/esm/obsidian/Modals/Alert.mjs +1 -1
- package/dist/lib/esm/obsidian/Modals/Confirm.d.mts +2 -1
- package/dist/lib/esm/obsidian/Modals/Confirm.mjs +1 -1
- package/dist/lib/esm/obsidian/Modals/ModalBase.d.mts +1 -1
- package/dist/lib/esm/obsidian/Modals/ModalBase.mjs +1 -1
- package/dist/lib/esm/obsidian/Modals/Prompt.d.mts +3 -1
- package/dist/lib/esm/obsidian/Modals/Prompt.mjs +1 -1
- package/dist/lib/esm/obsidian/Modals/SelectItem.d.mts +3 -1
- package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +1 -1
- package/dist/lib/esm/obsidian/MonkeyAround.d.mts +3 -1
- package/dist/lib/esm/obsidian/MonkeyAround.mjs +1 -1
- package/dist/lib/esm/obsidian/ObsidianSettings.d.mts +3 -0
- package/dist/lib/esm/obsidian/ObsidianSettings.mjs +1 -1
- package/dist/lib/esm/obsidian/Pdf.d.mts +2 -1
- package/dist/lib/esm/obsidian/Pdf.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +38 -29
- package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +6 -2
- package/dist/lib/esm/obsidian/Plugin/Plugin.d.mts +2 -1
- package/dist/lib/esm/obsidian/Plugin/Plugin.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginBase.d.mts +2 -7
- package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +1 -7
- package/dist/lib/esm/obsidian/Plugin/PluginContext.d.mts +2 -1
- package/dist/lib/esm/obsidian/Plugin/PluginContext.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginId.d.mts +2 -1
- package/dist/lib/esm/obsidian/Plugin/PluginId.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.d.mts +5 -2
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +1 -3
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +4 -1
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +1 -1
- package/dist/lib/esm/obsidian/Queue.d.mts +2 -1
- package/dist/lib/esm/obsidian/Queue.mjs +1 -1
- package/dist/lib/esm/obsidian/React/AppContext.d.mts +8 -1
- package/dist/lib/esm/obsidian/React/AppContext.mjs +3 -3
- package/dist/lib/esm/obsidian/Reference.d.mts +2 -1
- package/dist/lib/esm/obsidian/Reference.mjs +1 -1
- package/dist/lib/esm/obsidian/RenameDeleteHandler.d.mts +3 -2
- package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +1 -1
- package/dist/lib/esm/obsidian/ResourceUrl.d.mts +2 -1
- package/dist/lib/esm/obsidian/ResourceUrl.mjs +1 -1
- package/dist/lib/esm/obsidian/SettingEx.d.mts +2 -1
- package/dist/lib/esm/obsidian/SettingEx.mjs +1 -1
- package/dist/lib/esm/obsidian/ValidationMessage.d.mts +5 -0
- package/dist/lib/esm/obsidian/ValidationMessage.mjs +1 -1
- package/dist/lib/esm/obsidian/Vault.d.mts +6 -1
- package/dist/lib/esm/obsidian/Vault.mjs +1 -1
- package/dist/lib/esm/obsidian/VaultEx.d.mts +2 -1
- package/dist/lib/esm/obsidian/VaultEx.mjs +1 -1
- package/dist/lib/esm/url.d.mts +2 -1
- package/dist/lib/esm/url.mjs +1 -1
- package/package.json +2 -2
package/dist/lib/esm/Library.mjs
CHANGED
@@ -5,7 +5,7 @@ if you want to view the source, please visit the github repository of this plugi
|
|
5
5
|
|
6
6
|
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
7
|
|
8
|
-
const LIBRARY_VERSION = "22.1.1-beta.
|
8
|
+
const LIBRARY_VERSION = "22.1.1-beta.25";
|
9
9
|
const LIBRARY_NAME = "obsidian-dev-utils";
|
10
10
|
const LIBRARY_STYLES = ".obsidian-dev-utils input[type=url] {\n height: var(--input-height);\n}\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=url],\n.obsidian-dev-utils input[type=week] {\n -webkit-app-region: no-drag;\n background: var(--background-modifier-form-field);\n border: var(--input-border-width) solid var(--background-modifier-border);\n color: var(--text-normal);\n font-family: inherit;\n padding: var(--size-4-1) var(--size-4-2);\n font-size: var(--font-ui-small);\n border-radius: var(--input-radius);\n outline: none;\n}\n@media (hover: hover) {\n .obsidian-dev-utils input[type=month]:hover,\n .obsidian-dev-utils input[type=time]:hover,\n .obsidian-dev-utils input[type=url]:hover,\n .obsidian-dev-utils input[type=week]:hover {\n border-color: var(--background-modifier-border-hover);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n }\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus {\n border-color: var(--background-modifier-border-focus);\n transition: box-shadow 0.15s ease-in-out, border 0.15s ease-in-out;\n}\n.obsidian-dev-utils input[type=month]:active, .obsidian-dev-utils input[type=month]:focus, .obsidian-dev-utils input[type=month]:focus-visible,\n.obsidian-dev-utils input[type=time]:active,\n.obsidian-dev-utils input[type=time]:focus,\n.obsidian-dev-utils input[type=time]:focus-visible,\n.obsidian-dev-utils input[type=url]:active,\n.obsidian-dev-utils input[type=url]:focus,\n.obsidian-dev-utils input[type=url]:focus-visible,\n.obsidian-dev-utils input[type=week]:active,\n.obsidian-dev-utils input[type=week]:focus,\n.obsidian-dev-utils input[type=week]:focus-visible {\n box-shadow: 0 0 0 2px var(--background-modifier-border-focus);\n}\n.obsidian-dev-utils input[type=month]::placeholder,\n.obsidian-dev-utils input[type=time]::placeholder,\n.obsidian-dev-utils input[type=url]::placeholder,\n.obsidian-dev-utils input[type=week]::placeholder {\n color: var(--text-faint);\n}\n.mod-rtl input[type=month],\n.mod-rtl input[type=time],\n.mod-rtl input[type=week],\n.is-rtl input[type=month],\n.is-rtl input[type=time],\n.is-rtl input[type=week],\n.rtl input[type=month],\n.rtl input[type=time],\n.rtl input[type=week] {\n direction: rtl;\n}\n.mod-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=month]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl input[type=week]::-webkit-calendar-picker-indicator,\n.rtl input[type=month]::-webkit-calendar-picker-indicator,\n.rtl input[type=time]::-webkit-calendar-picker-indicator,\n.rtl input[type=week]::-webkit-calendar-picker-indicator {\n right: var(--size-4-1);\n left: auto;\n}\n\n.obsidian-dev-utils input[type=month],\n.obsidian-dev-utils input[type=time],\n.obsidian-dev-utils input[type=week] {\n font-variant-numeric: tabular-nums;\n position: relative;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-text,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-text {\n color: var(--text-faint);\n padding-inline-end: 0;\n}\n.obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n position: absolute;\n left: var(--size-4-1);\n right: auto;\n opacity: 0.5;\n}\n.obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-month-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-day-field:focus, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:active, .obsidian-dev-utils input[type=month]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=time]::-webkit-datetime-edit-year-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-month-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-day-field:focus,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:active,\n.obsidian-dev-utils input[type=week]::-webkit-datetime-edit-year-field:focus {\n background-color: var(--text-selection);\n color: var(--text-normal);\n cursor: text;\n}\n.mod-rtl .obsidian-dev-utils input[type=month], .is-rtl .obsidian-dev-utils input[type=month], .rtl .obsidian-dev-utils input[type=month],\n.mod-rtl .obsidian-dev-utils input[type=time],\n.is-rtl .obsidian-dev-utils input[type=time],\n.rtl .obsidian-dev-utils input[type=time],\n.mod-rtl .obsidian-dev-utils input[type=week],\n.is-rtl .obsidian-dev-utils input[type=week],\n.rtl .obsidian-dev-utils input[type=week] {\n direction: rtl;\n}\n.mod-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .is-rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator, .rtl .obsidian-dev-utils input[type=month]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator,\n.mod-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.is-rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator,\n.rtl .obsidian-dev-utils input[type=week]::-webkit-calendar-picker-indicator {\n left: auto;\n right: var(--size-4-1);\n}\n\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=month],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=time],\nbody:not(.is-ios):not(.is-android) .obsidian-dev-utils input[type=week] {\n padding-inline-start: var(--size-4-6);\n}\n\n.obsidian-dev-utils input[type=time]::-webkit-calendar-picker-indicator {\n margin-inline-start: 0;\n}\n\n.obsidian-dev-utils.modal-container .ok-button {\n margin-right: 10px;\n margin-top: 20px;\n}\n\n.obsidian-dev-utils .multiple-dropdown-component select,\n.obsidian-dev-utils .multiple-dropdown-component select:focus,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown {\n height: auto;\n}\n.obsidian-dev-utils .multiple-dropdown-component select option:checked,\n.obsidian-dev-utils .multiple-dropdown-component select:focus option:checked,\n.obsidian-dev-utils .multiple-dropdown-component .dropdown option:checked {\n background-color: #1967d2;\n color: #fff;\n}\n\n.obsidian-dev-utils.prompt-modal .text-box {\n width: 100%;\n}\n\n.obsidian-dev-utils :invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n\n/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../src/styles/input.scss%22,%22../src/styles/input-time.scss%22,%22../src/styles/modal-container.scss%22,%22../src/styles/multiple-dropdown-component.scss%22,%22../src/styles/prompt-modal.scss%22,%22../src/styles/validation.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AACE;EACE;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;AAAA;AAAA;AAAA;IACE;IACA,YACE;;;AAMR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA,YACE;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAGF;AAAA;AAAA;AAAA;EACE;;AASE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AC5DV;AAAA;AAAA;EAGE;EACA;;AAEA;AAAA;AAAA;EACE;EACA;;AAGF;AAAA;AAAA;EACE;EACA;EACA;EACA;;AAMA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;EACA;;AAIK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGP;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;;AAKF;AAAA;AAAA;EACE;;;AAMJ;EACE;;;AChDF;EACE;EACA;;;ACFF;AAAA;AAAA;EAGE;;AAEA;AAAA;AAAA;EACE;EACA;;;ACPJ;EACE;;;ACFJ;EACE%22,%22file%22:%22styles.css%22,%22sourcesContent%22:%5B%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='url'%5D%20%7B%5Cn%20%20%20%20height:%20var(--input-height)%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='url'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20-webkit-app-region:%20no-drag;%5Cn%20%20%20%20background:%20var(--background-modifier-form-field);%5Cn%20%20%20%20border:%20var(--input-border-width)%20solid%20var(--background-modifier-border);%5Cn%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20font-family:%20inherit;%5Cn%20%20%20%20padding:%20var(--size-4-1)%20var(--size-4-2);%5Cn%20%20%20%20font-size:%20var(--font-ui-small);%5Cn%20%20%20%20border-radius:%20var(--input-radius);%5Cn%20%20%20%20outline:%20none;%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20@media%20(hover:%20hover)%20%7B%5Cn%20%20%20%20%20%20%20%20&:hover%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20border-color:%20var(--background-modifier-border-hover);%5Cn%20%20%20%20%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20border-color:%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%20%20transition:%5Cn%20%20%20%20%20%20%20%20box-shadow%200.15s%20ease-in-out,%5Cn%20%20%20%20%20%20%20%20border%200.15s%20ease-in-out;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&:active,%5Cn%20%20%20%20&:focus,%5Cn%20%20%20%20&:focus-visible%20%7B%5Cn%20%20%20%20%20%20box-shadow:%200%200%200%202px%20var(--background-modifier-border-focus);%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::placeholder%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20@at-root%20%7B%5Cn%20%20%20%20.mod-rtl,%5Cn%20%20%20%20.is-rtl,%5Cn%20%20%20%20.rtl%20%7B%5Cn%20%20%20%20%20%20&%20%7B%5Cn%20%20%20%20%20%20%20%20input%5Btype='month'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='time'%5D,%5Cn%20%20%20%20%20%20%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20input%5Btype='month'%5D,%5Cn%20%20input%5Btype='time'%5D,%5Cn%20%20input%5Btype='week'%5D%20%7B%5Cn%20%20%20%20font-variant-numeric:%20tabular-nums;%5Cn%20%20%20%20position:%20relative;%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-text%20%7B%5Cn%20%20%20%20%20%20color:%20var(--text-faint);%5Cn%20%20%20%20%20%20padding-inline-end:%200;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20position:%20absolute;%5Cn%20%20%20%20%20%20left:%20var(--size-4-1);%5Cn%20%20%20%20%20%20right:%20auto;%5Cn%20%20%20%20%20%20opacity:%200.5;%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20&::-webkit-datetime-edit-month-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-day-field,%5Cn%20%20%20%20&::-webkit-datetime-edit-year-field%20%7B%5Cn%20%20%20%20%20%20&:active,%5Cn%20%20%20%20%20%20&:focus%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20var(--text-selection);%5Cn%20%20%20%20%20%20%20%20color:%20var(--text-normal);%5Cn%20%20%20%20%20%20%20%20cursor:%20text;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20.mod-rtl%20&,%5Cn%20%20%20%20%20%20.is-rtl%20&,%5Cn%20%20%20%20%20%20.rtl%20&%20%7B%5Cn%20%20%20%20%20%20direction:%20rtl;%5Cn%5Cn%20%20%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20%20%20left:%20auto;%5Cn%20%20%20%20%20%20%20%20right:%20var(--size-4-1);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%5Cn%20%20%20%20@at-root%20%7B%5Cn%20%20%20%20%20%20body:not(.is-ios):not(.is-android)%20&%20%7B%5Cn%20%20%20%20%20%20%20%20padding-inline-start:%20var(--size-4-6);%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20input%5Btype='time'%5D%20%7B%5Cn%20%20%20%20&::-webkit-calendar-picker-indicator%20%7B%5Cn%20%20%20%20%20%20margin-inline-start:%200;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.modal-container%20%7B%5Cn%20%20%20%20.ok-button%20%7B%5Cn%20%20%20%20%20%20margin-right:%2010px;%5Cn%20%20%20%20%20%20margin-top:%2020px;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20.multiple-dropdown-component%20%7B%5Cn%20%20%20%20select,%5Cn%20%20%20%20select:focus,%5Cn%20%20%20%20.dropdown%20%7B%5Cn%20%20%20%20%20%20height:%20auto;%5Cn%5Cn%20%20%20%20%20%20option:checked%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20%231967d2;%5Cn%20%20%20%20%20%20%20%20color:%20%23fff;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20&.prompt-modal%20%7B%5Cn%20%20%20%20.text-box%20%7B%5Cn%20%20%20%20%20%20width:%20100%25;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22,%22.obsidian-dev-utils%20%7B%5Cn%20%20:invalid%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%202px%20var(--text-error);%5Cn%20%20%7D%5Cn%7D%5Cn%22%5D%7D */\n";
|
11
11
|
export {
|
@@ -13,4 +13,4 @@ export {
|
|
13
13
|
LIBRARY_STYLES,
|
14
14
|
LIBRARY_VERSION
|
15
15
|
};
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
16
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0xpYnJhcnkudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogSGVscGVycyBmb3Igd29ya2luZyB3aXRoIHRoZSBgb2JzaWRpYW4tZGV2LXV0aWxzYCBsaWJyYXJ5LlxuICovXG5cbi8qKlxuICogVGhlIHZlcnNpb24gb2YgdGhlIGBvYnNpZGlhbi1kZXYtdXRpbHNgIGxpYnJhcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBMSUJSQVJZX1ZFUlNJT04gPSAnJChMSUJSQVJZX1ZFUlNJT04pJztcblxuLyoqXG4gKiBUaGUgbmFtZSBvZiB0aGUgYG9ic2lkaWFuLWRldi11dGlsc2AgbGlicmFyeS5cbiAqL1xuZXhwb3J0IGNvbnN0IExJQlJBUllfTkFNRSA9ICdvYnNpZGlhbi1kZXYtdXRpbHMnO1xuXG4vKipcbiAqIFRoZSBzdHlsZXMgb2YgdGhlIGBvYnNpZGlhbi1kZXYtdXRpbHNgIGxpYnJhcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBMSUJSQVJZX1NUWUxFUyA9ICckKExJQlJBUllfU1RZTEVTKSc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBU08sTUFBTSxrQkFBa0I7QUFLeEIsTUFBTSxlQUFlO0FBS3JCLE1BQU0saUJBQWlCOyIsCiAgIm5hbWVzIjogW10KfQo=
|
package/dist/lib/esm/Object.mjs
CHANGED
@@ -316,4 +316,4 @@ export {
|
|
316
316
|
setNestedPropertyValue,
|
317
317
|
toJson
|
318
318
|
};
|
319
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL09iamVjdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gT2JqZWN0XG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgT2JqZWN0cy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFVuZGVmaW5lZE9uUGFydGlhbERlZXAgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQgdHlwZSB7XG4gIE1heWJlUmV0dXJuLFxuICBTdHJpbmdLZXlzXG59IGZyb20gJy4vVHlwZS50cyc7XG5cbmltcG9ydCB7XG4gIGVycm9yVG9TdHJpbmcsXG4gIHRocm93RXhwcmVzc2lvblxufSBmcm9tICcuL0Vycm9yLnRzJztcbmltcG9ydCB7IHJlcGxhY2VBbGwgfSBmcm9tICcuL1N0cmluZy50cyc7XG5cbi8qKlxuICogU3BlY2lmaWVzIGhvdyBmdW5jdGlvbnMgc2hvdWxkIGJlIGhhbmRsZWQgaW4gdGhlIEpTT04gb3V0cHV0LlxuICovXG5leHBvcnQgZW51bSBGdW5jdGlvbkhhbmRsaW5nTW9kZSB7XG4gIC8qKlxuICAgKiBFeGNsdWRlcyBmdW5jdGlvbnMgZnJvbSB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBFeGNsdWRlID0gJ2V4Y2x1ZGUnLFxuICAvKipcbiAgICogSW5jbHVkZXMgdGhlIGZ1bGwgZnVuY3Rpb24gZGVmaW5pdGlvbiBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBGdWxsID0gJ2Z1bGwnLFxuICAvKipcbiAgICogSW5jbHVkZXMgb25seSB0aGUgZnVuY3Rpb24gbmFtZSBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBOYW1lT25seSA9ICduYW1lT25seSdcbn1cblxuZW51bSBUb2tlblN1YnN0aXR1dGlvbktleSB7XG4gIENpcmN1bGFyUmVmZXJlbmNlID0gJ0NpcmN1bGFyUmVmZXJlbmNlJyxcbiAgRnVuY3Rpb24gPSAnRnVuY3Rpb24nLFxuICBNYXhEZXB0aExpbWl0UmVhY2hlZCA9ICdNYXhEZXB0aExpbWl0UmVhY2hlZCcsXG4gIE1heERlcHRoTGltaXRSZWFjaGVkQXJyYXkgPSAnTWF4RGVwdGhMaW1pdFJlYWNoZWRBcnJheScsXG4gIFRvSlNPTkZhaWxlZCA9ICdUb0pTT05GYWlsZWQnLFxuICBVbmRlZmluZWQgPSAnVW5kZWZpbmVkJ1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbnZlcnRpbmcgYW4gb2JqZWN0IHRvIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9Kc29uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaG93IGZ1bmN0aW9ucyBzaG91bGQgYmUgaGFuZGxlZCBpbiB0aGUgSlNPTiBvdXRwdXQgKGRlZmF1bHQ6IGBleGNsdWRlYCkuXG4gICAqL1xuICBmdW5jdGlvbkhhbmRsaW5nTW9kZTogRnVuY3Rpb25IYW5kbGluZ01vZGU7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1heGltdW0gZGVwdGggb2YgbmVzdGVkIG9iamVjdHMgdG8gaW5jbHVkZSBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIFVzZSBgLTFgIGZvciBubyBsaW1pdC5cbiAgICogRGVmYXVsdHMgdG8gYC0xYC5cbiAgICovXG4gIG1heERlcHRoOiBudW1iZXI7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBjYXRjaCBlcnJvcnMgaW4gYHRvSlNPTigpYCBhbmQgcmVwbGFjZSB0aGVtIHdpdGggYSBwbGFjZWhvbGRlci5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHNob3VsZENhdGNoVG9KU09ORXJyb3JzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdG8gaGFuZGxlIGNpcmN1bGFyIHJlZmVyZW5jZXMgaW4gdGhlIEpTT04gb3V0cHV0LlxuICAgKiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgc2hvdWxkSGFuZGxlQ2lyY3VsYXJSZWZlcmVuY2VzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdG8gaGFuZGxlIGVycm9ycyBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBzaG91bGRIYW5kbGVFcnJvcnM6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBoYW5kbGUgdW5kZWZpbmVkIHZhbHVlcyBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBzaG91bGRIYW5kbGVVbmRlZmluZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBzb3J0IHRoZSBrZXlzIG9mIHRoZSBKU09OIG91dHB1dC5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHNob3VsZFNvcnRLZXlzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBpbmRlbnRhdGlvbiBvZiB0aGUgSlNPTiBvdXRwdXQuIFRoaXMgY2FuIGJlIGEgbnVtYmVyIG9mIHNwYWNlcyBvciBhIHN0cmluZy4gRGVmYXVsdHMgdG8gYDJgLlxuICAgKi9cbiAgc3BhY2U6IG51bWJlciB8IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgc3Vic3RpdHV0aW9ucyB0byB1c2UgaW4gdGhlIEpTT04gb3V0cHV0LlxuICAgKi9cbiAgdG9rZW5TdWJzdGl0dXRpb25zOiBQYXJ0aWFsPFRva2VuU3Vic3RpdHV0aW9ucz47XG59XG5cbmludGVyZmFjZSBBcHBseVN1YnN0aXR1dGlvbnNPcHRpb25zIHtcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW107XG4gIGluZGV4OiBudW1iZXI7XG4gIGtleTogVG9rZW5TdWJzdGl0dXRpb25LZXk7XG4gIHN1YnN0aXR1dGlvbnM6IFRva2VuU3Vic3RpdHV0aW9ucztcbn1cblxuaW50ZXJmYWNlIEpTT05TZXJpYWxpemFibGUge1xuICB0b0pTT04oLi4uYXJnczogdW5rbm93bltdKTogdW5rbm93bjtcbn1cblxuaW50ZXJmYWNlIFRva2VuU3Vic3RpdHV0aW9ucyB7XG4gIGNpcmN1bGFyUmVmZXJlbmNlOiBzdHJpbmc7XG4gIG1heERlcHRoTGltaXRSZWFjaGVkOiBzdHJpbmc7XG4gIHRvSlNPTkZhaWxlZDogc3RyaW5nO1xufVxuXG5jb25zdCBLRVlfU0VQQVJBVE9SID0gJy4nO1xuXG4vKipcbiAqIEFzc2lnbnMgcHJvcGVydGllcyBmcm9tIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIGEgdGFyZ2V0IG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZSAtIFRoZSBzb3VyY2Ugb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdGFyZ2V0IG9iamVjdCB3aXRoIHRoZSBhc3NpZ25lZCBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBvYmplY3QsIFU+KHRhcmdldDogVCwgc291cmNlOiBVKTogVCAmIFU7XG5cbi8qKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZTEgLSBUaGUgZmlyc3Qgc291cmNlIG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHNvdXJjZTIgLSBUaGUgc2Vjb25kIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSB0YXJnZXQgb2JqZWN0IHdpdGggdGhlIGFzc2lnbmVkIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdCwgVSwgVj4odGFyZ2V0OiBULCBzb3VyY2UxOiBVLCBzb3VyY2UyOiBWKTogVCAmIFUgJiBWO1xuXG4vKipcbiAqIEFzc2lnbnMgcHJvcGVydGllcyBmcm9tIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIGEgdGFyZ2V0IG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZTEgLSBUaGUgZmlyc3Qgc291cmNlIG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHNvdXJjZTIgLSBUaGUgc2Vjb25kIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEBwYXJhbSBzb3VyY2UzIC0gVGhlIHRoaXJkIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSB0YXJnZXQgb2JqZWN0IHdpdGggdGhlIGFzc2lnbmVkIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdCwgVSwgViwgVz4odGFyZ2V0OiBULCBzb3VyY2UxOiBVLCBzb3VyY2UyOiBWLCBzb3VyY2UzOiBXKTogVCAmIFUgJiBWICYgVztcblxuLyoqXG4gKiBBc3NpZ25zIHByb3BlcnRpZXMgZnJvbSBvbmUgb3IgbW9yZSBzb3VyY2Ugb2JqZWN0cyB0byBhIHRhcmdldCBvYmplY3QsIGluY2x1ZGluZyBub24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgLSBUaGUgdGFyZ2V0IG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyB0by5cbiAqIEBwYXJhbSBzb3VyY2VzIC0gVGhlIHNvdXJjZSBvYmplY3RzIHRvIGFzc2lnbiBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdGFyZ2V0IG9iamVjdCB3aXRoIHRoZSBhc3NpZ25lZCBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzKHRhcmdldDogb2JqZWN0LCAuLi5zb3VyY2VzOiBvYmplY3RbXSk6IG9iamVjdCB7XG4gIHJldHVybiBfYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzKHRhcmdldCwgLi4uc291cmNlcyk7XG59XG5cbi8qKlxuICogQ2xvbmVzIGFuIG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gY2xvbmUuXG4gKiBAcmV0dXJucyBBIG5ldyBvYmplY3Qgd2l0aCB0aGUgc2FtZSBwcm9wZXJ0aWVzIGFzIHRoZSBvcmlnaW5hbCBvYmplY3QsIGluY2x1ZGluZyBub24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVXaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdD4ob2JqOiBUKTogVCB7XG4gIHJldHVybiBPYmplY3QuY3JlYXRlKGdldFByb3RvdHlwZU9mKG9iaiksIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG9iaikpIGFzIFQ7XG59XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIHZhbHVlcyB0byBkZXRlcm1pbmUgaWYgdGhleSBhcmUgZGVlcGx5IGVxdWFsLlxuICpcbiAqIEBwYXJhbSBhIC0gVGhlIGZpcnN0IHZhbHVlIHRvIGNvbXBhcmUuXG4gKiBAcGFyYW0gYiAtIFRoZSBzZWNvbmQgdmFsdWUgdG8gY29tcGFyZS5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdmFsdWVzIGFyZSBkZWVwbHkgZXF1YWwsIG90aGVyd2lzZSBgZmFsc2VgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVlcEVxdWFsKGE6IHVua25vd24sIGI6IHVua25vd24pOiBib29sZWFuIHtcbiAgaWYgKGEgPT09IGIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgYSAhPT0gJ29iamVjdCcgfHwgdHlwZW9mIGIgIT09ICdvYmplY3QnIHx8IGEgPT09IG51bGwgfHwgYiA9PT0gbnVsbCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGtleXNBID0gZ2V0QWxsS2V5cyhhKTtcbiAgY29uc3Qga2V5c0IgPSBnZXRBbGxLZXlzKGIpO1xuXG4gIGlmIChrZXlzQS5sZW5ndGggIT09IGtleXNCLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGFSZWNvcmQgPSBhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBjb25zdCBiUmVjb3JkID0gYiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzQSkge1xuICAgIGlmICgha2V5c0IuaW5jbHVkZXMoa2V5KSB8fCAhZGVlcEVxdWFsKGFSZWNvcmRba2V5XSwgYlJlY29yZFtrZXldKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIERlbGV0ZXMgbXVsdGlwbGUgcHJvcGVydGllcyBmcm9tIGFuIG9iamVjdC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gZGVsZXRlIHRoZSBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcGFyYW0gcHJvcGVydHlOYW1lcyAtIFRoZSBuYW1lcyBvZiB0aGUgcHJvcGVydGllcyB0byBkZWxldGUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgYW55IG9mIHRoZSBwcm9wZXJ0aWVzIHdlcmUgcHJlc2VudCwgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWxldGVQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBvYmplY3Q+KG9iajogVCwgcHJvcGVydHlOYW1lczogKGtleW9mIFQpW10pOiBib29sZWFuIHtcbiAgbGV0IGFucyA9IGZhbHNlO1xuXG4gIGZvciAoY29uc3QgcHJvcGVydHlOYW1lIG9mIHByb3BlcnR5TmFtZXMpIHtcbiAgICBhbnMgPSBkZWxldGVQcm9wZXJ0eShvYmosIHByb3BlcnR5TmFtZSkgfHwgYW5zO1xuICB9XG5cbiAgcmV0dXJuIGFucztcbn1cblxuLyoqXG4gKiBEZWxldGVzIGEgcHJvcGVydHkgZnJvbSBhbiBvYmplY3QuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIG9iamVjdC5cbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIGRlbGV0ZSB0aGUgcHJvcGVydHkgZnJvbS5cbiAqIEBwYXJhbSBwcm9wZXJ0eU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gZGVsZXRlLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBwcm9wZXJ0eSB3YXMgcHJlc2VudCwgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWxldGVQcm9wZXJ0eTxUIGV4dGVuZHMgb2JqZWN0PihvYmo6IFQsIHByb3BlcnR5TmFtZToga2V5b2YgVCk6IGJvb2xlYW4ge1xuICBpZiAoIU9iamVjdC5oYXNPd24ob2JqLCBwcm9wZXJ0eU5hbWUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHluYW1pYy1kZWxldGVcbiAgZGVsZXRlIG9ialtwcm9wZXJ0eU5hbWVdO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBHZXRzIGFsbCBlbnRyaWVzIG9mIGFuIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0gb2JqIC0gVGhlIG9iamVjdCB0byBnZXQgdGhlIGVudHJpZXMgb2YuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBhbGwgZW50cmllcyBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWxsRW50cmllczxUIGV4dGVuZHMgb2JqZWN0PihvYmo6IFQpOiBbU3RyaW5nS2V5czxUPiwgVFtTdHJpbmdLZXlzPFQ+XV1bXSB7XG4gIHJldHVybiBnZXRBbGxLZXlzKG9iaikubWFwKChrZXkpID0+IFtrZXksIG9ialtrZXldXSk7XG59XG5cbi8qKlxuICogR2V0cyBhbGwga2V5cyBvZiBhbiBvYmplY3QuXG4gKiBJbmNsdWRlcyBmaWVsZHMgYW5kIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gZ2V0IHRoZSBrZXlzIG9mLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgYWxsIGtleXMgb2YgdGhlIG9iamVjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbEtleXM8VCBleHRlbmRzIG9iamVjdD4ob2JqOiBUKTogU3RyaW5nS2V5czxUPltdIHtcbiAgY29uc3Qga2V5czogU3RyaW5nS2V5czxUPltdID0gW107XG4gIGxldCBjdXJyZW50OiBudWxsIHwgb2JqZWN0ID0gb2JqO1xuICB3aGlsZSAoY3VycmVudCkge1xuICAgIGNvbnN0IGRlc2NyaXB0b3JzID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoY3VycmVudCkgYXMgUmVjb3JkPHN0cmluZywgUHJvcGVydHlEZXNjcmlwdG9yPjtcbiAgICBmb3IgKGNvbnN0IFtrZXksIGRlc2NyaXB0b3JdIG9mIE9iamVjdC5lbnRyaWVzKGRlc2NyaXB0b3JzKSkge1xuICAgICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFzR2V0dGVyID0gdHlwZW9mIGRlc2NyaXB0b3IuZ2V0ID09PSAnZnVuY3Rpb24nO1xuICAgICAgY29uc3QgaGFzU2V0dGVyID0gdHlwZW9mIGRlc2NyaXB0b3Iuc2V0ID09PSAnZnVuY3Rpb24nO1xuICAgICAgaWYgKGhhc0dldHRlciB8fCBoYXNTZXR0ZXIpIHtcbiAgICAgICAgaWYgKGhhc0dldHRlciAmJiBoYXNTZXR0ZXIpIHtcbiAgICAgICAgICBrZXlzLnB1c2goa2V5IGFzIFN0cmluZ0tleXM8VD4pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRvci5lbnVtZXJhYmxlICYmIGRlc2NyaXB0b3Iud3JpdGFibGUpIHtcbiAgICAgICAga2V5cy5wdXNoKGtleSBhcyBTdHJpbmdLZXlzPFQ+KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjdXJyZW50ID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKGN1cnJlbnQpIGFzIG51bGwgfCBvYmplY3Q7XG4gIH1cbiAgcmV0dXJuIGtleXMuc29ydCgpO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIHZhbHVlIG9mIGEgbmVzdGVkIHByb3BlcnR5IGZyb20gYW4gb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIGdldCB0aGUgbmVzdGVkIHByb3BlcnR5IHZhbHVlIGZyb20uXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIHRoZSBuZXN0ZWQgcHJvcGVydHkuXG4gKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIG5lc3RlZCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5lc3RlZFByb3BlcnR5VmFsdWUob2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgcGF0aDogc3RyaW5nKTogdW5rbm93biB7XG4gIGxldCBub2RlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZCA9IG9iajtcbiAgY29uc3Qga2V5cyA9IHBhdGguc3BsaXQoS0VZX1NFUEFSQVRPUik7XG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBub2RlID0gbm9kZVtrZXldIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIG5vZGU7XG59XG5cbi8qKlxuICogR2V0cyB0aGUgcHJvdG90eXBlIG9mIHRoZSBzcGVjaWZpZWQgb2JqZWN0LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBvYmplY3QuXG4gKiBAcGFyYW0gaW5zdGFuY2UgLSBUaGUgb2JqZWN0IGluc3RhbmNlIHRvIHJldHJpZXZlIHRoZSBwcm90b3R5cGUgb2YuXG4gKiBAcmV0dXJucyBUaGUgcHJvdG90eXBlIG9mIHRoZSBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm90b3R5cGVPZjxUPihpbnN0YW5jZTogVCk6IFQge1xuICBpZiAoaW5zdGFuY2UgPT09IHVuZGVmaW5lZCB8fCBpbnN0YW5jZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKGluc3RhbmNlKSBhcyBUO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgbmFtZSBvZiBhIHByb3BlcnR5IG9mIGEgZ2l2ZW4gdHlwZSBgVGAuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBwcm9wZXJ0eS5cbiAqIEBwYXJhbSBuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IGFzIGEgc3RyaW5nLlxuICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbmFtZW9mPFQ+KG5hbWU6IEV4dHJhY3Q8a2V5b2YgVCwgc3RyaW5nPik6IHN0cmluZyB7XG4gIHJldHVybiBuYW1lO1xufVxuXG4vKipcbiAqIE5vcm1hbGl6ZXMgb3B0aW9uYWwgcHJvcGVydGllcyB0byBhbGxvdyBgdW5kZWZpbmVkYCBhc3NpZ25tZW50IGluIHN0cmljdCBtb2RlLlxuICpcbiAqIFRoaXMgdXRpbGl0eSBwcm92aWRlcyBhIHdvcmthcm91bmQgZm9yIHRoZSBgZXhhY3RPcHRpb25hbFByb3BlcnR5VHlwZXNgIFR5cGVTY3JpcHQgZmxhZyxcbiAqIHdoaWNoIHByb2hpYml0cyBkaXJlY3RseSBhc3NpZ25pbmcgYHVuZGVmaW5lZGAgdG8gb3B0aW9uYWwgcHJvcGVydGllcyB3aGVuIHRoZSB0eXBlXG4gKiBleHBsaWNpdGx5IG9taXRzIGB1bmRlZmluZWRgLlxuICpcbiAqIEV4YW1wbGU6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAvLyBXaXRoIGBleGFjdE9wdGlvbmFsUHJvcGVydHlUeXBlczogdHJ1ZWBcbiAqIGNvbnN0IHg6IHsgcHJvcD86IHN0cmluZyB9ID0geyBwcm9wOiB1bmRlZmluZWQgfTsgLy8gQ29tcGlsZXIgZXJyb3JcbiAqXG4gKiAvLyBVc2luZyB0aGlzIHV0aWxpdHk6XG4gKiBjb25zdCB5OiB7IHByb3A/OiBzdHJpbmcgfSA9IG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllczx7IHByb3A/OiBzdHJpbmcgfT4oeyBwcm9wOiB1bmRlZmluZWQgfSk7IC8vIFdvcmtzXG4gKiBgYGBcbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdGFyZ2V0IHR5cGUgd2l0aCBvcHRpb25hbCBwcm9wZXJ0aWVzIHRvIG5vcm1hbGl6ZS5cbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIG5vcm1hbGl6ZSwgYWxsb3dpbmcgZXhwbGljaXQgYHVuZGVmaW5lZGAgZm9yIG9wdGlvbmFsIHByb3BlcnRpZXMuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBvYmplY3QsIGNvbXBhdGlibGUgd2l0aCBgZXhhY3RPcHRpb25hbFByb3BlcnR5VHlwZXNgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzPFQ+KG9iajogVW5kZWZpbmVkT25QYXJ0aWFsRGVlcDxUPik6IFQge1xuICByZXR1cm4gb2JqIGFzIFQ7XG59XG5cbi8qKlxuICogU2V0cyB0aGUgdmFsdWUgb2YgYSBuZXN0ZWQgcHJvcGVydHkgaW4gYW4gb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIHNldCB0aGUgbmVzdGVkIHByb3BlcnR5IHZhbHVlIGluLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byB0aGUgbmVzdGVkIHByb3BlcnR5LlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldE5lc3RlZFByb3BlcnR5VmFsdWUob2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgcGF0aDogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihgUHJvcGVydHkgcGF0aCAke3BhdGh9IG5vdCBmb3VuZGApO1xuICBsZXQgbm9kZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCB1bmRlZmluZWQgPSBvYmo7XG4gIGNvbnN0IGtleXMgPSBwYXRoLnNwbGl0KEtFWV9TRVBBUkFUT1IpO1xuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzLnNsaWNlKDAsIC0xKSkge1xuICAgIGlmIChub2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICBub2RlID0gbm9kZVtrZXldIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgbGFzdEtleSA9IGtleXMuYXQoLTEpO1xuICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkIHx8IGxhc3RLZXkgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IGVycm9yO1xuICB9XG5cbiAgbm9kZVtsYXN0S2V5XSA9IHZhbHVlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgZ2l2ZW4gdmFsdWUgdG8gYSBKU09OIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gYmUgY29udmVydGVkIHRvIEpTT04uIFRoaXMgY2FuIGJlIG9mIGFueSB0eXBlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjdXN0b21pemluZyB0aGUgSlNPTiBjb252ZXJzaW9uIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGlucHV0IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uKHZhbHVlOiB1bmtub3duLCBvcHRpb25zOiBQYXJ0aWFsPFRvSnNvbk9wdGlvbnM+ID0ge30pOiBzdHJpbmcge1xuICBjb25zdCBERUZBVUxUX09QVElPTlM6IHsgdG9rZW5TdWJzdGl0dXRpb25zOiBUb2tlblN1YnN0aXR1dGlvbnMgfSAmIFRvSnNvbk9wdGlvbnMgPSB7XG4gICAgZnVuY3Rpb25IYW5kbGluZ01vZGU6IEZ1bmN0aW9uSGFuZGxpbmdNb2RlLkV4Y2x1ZGUsXG4gICAgbWF4RGVwdGg6IC0xLFxuICAgIHNob3VsZENhdGNoVG9KU09ORXJyb3JzOiBmYWxzZSxcbiAgICBzaG91bGRIYW5kbGVDaXJjdWxhclJlZmVyZW5jZXM6IGZhbHNlLFxuICAgIHNob3VsZEhhbmRsZUVycm9yczogZmFsc2UsXG4gICAgc2hvdWxkSGFuZGxlVW5kZWZpbmVkOiBmYWxzZSxcbiAgICBzaG91bGRTb3J0S2V5czogZmFsc2UsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW1hZ2ljLW51bWJlcnNcbiAgICBzcGFjZTogMixcbiAgICB0b2tlblN1YnN0aXR1dGlvbnM6IHtcbiAgICAgIGNpcmN1bGFyUmVmZXJlbmNlOiBtYWtlT2JqZWN0VG9rZW5TdWJzdGl0dXRpb24oVG9rZW5TdWJzdGl0dXRpb25LZXkuQ2lyY3VsYXJSZWZlcmVuY2UpLFxuICAgICAgbWF4RGVwdGhMaW1pdFJlYWNoZWQ6IG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZCksXG4gICAgICB0b0pTT05GYWlsZWQ6IG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihUb2tlblN1YnN0aXR1dGlvbktleS5Ub0pTT05GYWlsZWQpXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGZ1bGxPcHRpb25zID0ge1xuICAgIC4uLkRFRkFVTFRfT1BUSU9OUyxcbiAgICAuLi5vcHRpb25zLFxuICAgIHRva2VuU3Vic3RpdHV0aW9uczoge1xuICAgICAgLi4uREVGQVVMVF9PUFRJT05TLnRva2VuU3Vic3RpdHV0aW9ucyxcbiAgICAgIC4uLm9wdGlvbnMudG9rZW5TdWJzdGl0dXRpb25zXG4gICAgfVxuICB9O1xuXG4gIGlmIChmdWxsT3B0aW9ucy5tYXhEZXB0aCA9PT0gLTEpIHtcbiAgICBmdWxsT3B0aW9ucy5tYXhEZXB0aCA9IEluZmluaXR5O1xuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25UZXh0czogc3RyaW5nW10gPSBbXTtcbiAgY29uc3QgdXNlZE9iamVjdHMgPSBuZXcgV2Vha1NldDxvYmplY3Q+KCk7XG5cbiAgY29uc3QgcGxhaW5PYmplY3QgPSB0b1BsYWluT2JqZWN0KHZhbHVlLCAnJywgMCwgdHJ1ZSwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgbGV0IGpzb24gPSBKU09OLnN0cmluZ2lmeShwbGFpbk9iamVjdCwgbnVsbCwgZnVsbE9wdGlvbnMuc3BhY2UpID8/ICcnO1xuICBqc29uID0gcmVwbGFjZUFsbChqc29uLCAvXCJcXFtcXFsoPzxLZXk+W0EtWmEtel0rKSg/PEluZGV4PlxcZCopXFxdXFxdXCIvZywgKF8sIGtleSwgaW5kZXhTdHIpID0+XG4gICAgYXBwbHlTdWJzdGl0dXRpb25zKHtcbiAgICAgIGZ1bmN0aW9uVGV4dHMsXG4gICAgICBpbmRleDogaW5kZXhTdHIgPyBwYXJzZUludChpbmRleFN0ciwgMTApIDogMCxcbiAgICAgIGtleToga2V5IGFzIFRva2VuU3Vic3RpdHV0aW9uS2V5LFxuICAgICAgc3Vic3RpdHV0aW9uczogZnVsbE9wdGlvbnMudG9rZW5TdWJzdGl0dXRpb25zXG4gICAgfSkpO1xuICByZXR1cm4ganNvbjtcbn1cblxuZnVuY3Rpb24gX2Fzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh0YXJnZXQ6IG9iamVjdCwgLi4uc291cmNlczogb2JqZWN0W10pOiBvYmplY3Qge1xuICBmb3IgKGNvbnN0IHNvdXJjZSBvZiBzb3VyY2VzKSB7XG4gICAgY29uc3QgZGVzY3JpcHRvcnMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhzb3VyY2UpO1xuXG4gICAgZm9yIChjb25zdCBba2V5LCBkZXNjcmlwdG9yXSBvZiBPYmplY3QuZW50cmllcyhkZXNjcmlwdG9ycykpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIEF2b2lkIHJlZGVmaW5pbmcgcmVhZC1vbmx5IHByb3BlcnRpZXMgKGVzcGVjaWFsbHkgYHByb3RvdHlwZWApXG4gICAgICAgIGlmIChcbiAgICAgICAgICBrZXkgPT09ICdwcm90b3R5cGUnXG4gICAgICAgICAgfHwgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpPy53cml0YWJsZSA9PT0gZmFsc2VcbiAgICAgICAgICAgICYmICFPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KT8uY29uZmlndXJhYmxlKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgZGVzY3JpcHRvcik7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gU2lsZW50bHkgaWdub3JlIGlmIGRlZmluZVByb3BlcnR5IGZhaWxzXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc291cmNlUHJvdG90eXBlcyA9IHNvdXJjZXNcbiAgICAubWFwKChzb3VyY2UpID0+IGdldFByb3RvdHlwZU9mPG9iamVjdCB8IHVuZGVmaW5lZD4oc291cmNlKSlcbiAgICAuZmlsdGVyKChwcm90byk6IHByb3RvIGlzIG9iamVjdCA9PiAhIXByb3RvKTtcblxuICBpZiAoc291cmNlUHJvdG90eXBlcy5sZW5ndGggPiAwKSB7XG4gICAgY29uc3QgdGFyZ2V0UHJvdG90eXBlID0gX2Fzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh7fSwgZ2V0UHJvdG90eXBlT2YodGFyZ2V0KSwgLi4uc291cmNlUHJvdG90eXBlcyk7XG5cbiAgICB0cnkge1xuICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRhcmdldCwgdGFyZ2V0UHJvdG90eXBlKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIFNpbGVudGx5IGlnbm9yZSBpZiBzZXRQcm90b3R5cGVPZiBmYWlsc1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0YXJnZXQ7XG59XG5cbmZ1bmN0aW9uIGFwcGx5U3Vic3RpdHV0aW9ucyhvcHRpb25zOiBBcHBseVN1YnN0aXR1dGlvbnNPcHRpb25zKTogTWF5YmVSZXR1cm48c3RyaW5nPiB7XG4gIHN3aXRjaCAob3B0aW9ucy5rZXkpIHtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LkNpcmN1bGFyUmVmZXJlbmNlOlxuICAgICAgcmV0dXJuIG9wdGlvbnMuc3Vic3RpdHV0aW9ucy5jaXJjdWxhclJlZmVyZW5jZTtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LkZ1bmN0aW9uOlxuICAgICAgcmV0dXJuIG9wdGlvbnMuZnVuY3Rpb25UZXh0c1tvcHRpb25zLmluZGV4XSA/PyB0aHJvd0V4cHJlc3Npb24obmV3IEVycm9yKGBGdW5jdGlvbiB3aXRoIGluZGV4ICR7b3B0aW9ucy5pbmRleC50b1N0cmluZygpfSBub3QgZm91bmRgKSk7XG4gICAgY2FzZSBUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZDpcbiAgICAgIHJldHVybiBvcHRpb25zLnN1YnN0aXR1dGlvbnMubWF4RGVwdGhMaW1pdFJlYWNoZWQ7XG4gICAgY2FzZSBUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZEFycmF5OlxuICAgICAgcmV0dXJuIGBBcnJheSgke29wdGlvbnMuaW5kZXgudG9TdHJpbmcoKX0pYDtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LlRvSlNPTkZhaWxlZDpcbiAgICAgIHJldHVybiBvcHRpb25zLnN1YnN0aXR1dGlvbnMudG9KU09ORmFpbGVkO1xuICAgIGNhc2UgVG9rZW5TdWJzdGl0dXRpb25LZXkuVW5kZWZpbmVkOlxuICAgICAgcmV0dXJuICd1bmRlZmluZWQnO1xuICAgIGRlZmF1bHQ6XG4gICAgICBicmVhaztcbiAgfVxufVxuXG5mdW5jdGlvbiBoYW5kbGVBcnJheShcbiAgdmFsdWU6IHVua25vd25bXSxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAoZGVwdGggPiBmdWxsT3B0aW9ucy5tYXhEZXB0aCkge1xuICAgIHJldHVybiBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuTWF4RGVwdGhMaW1pdFJlYWNoZWRBcnJheSwgdmFsdWUubGVuZ3RoKTtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZS5tYXAoKGl0ZW0sIGluZGV4KSA9PiB0b1BsYWluT2JqZWN0KGl0ZW0sIGluZGV4LnRvU3RyaW5nKCksIGRlcHRoICsgMSwgY2FuVXNlVG9KU09OLCBmdWxsT3B0aW9ucywgZnVuY3Rpb25UZXh0cywgdXNlZE9iamVjdHMpKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlQ2lyY3VsYXJSZWZlcmVuY2UodmFsdWU6IG9iamVjdCwga2V5OiBzdHJpbmcsIGZ1bGxPcHRpb25zOiBUb0pzb25PcHRpb25zKTogdW5rbm93biB7XG4gIGlmIChmdWxsT3B0aW9ucy5zaG91bGRIYW5kbGVDaXJjdWxhclJlZmVyZW5jZXMpIHtcbiAgICByZXR1cm4gbWFrZVBsYWNlaG9sZGVyKFRva2VuU3Vic3RpdHV0aW9uS2V5LkNpcmN1bGFyUmVmZXJlbmNlKTtcbiAgfVxuICBjb25zdCB2YWx1ZUNvbnN0cnVjdG9yTmFtZSA9IHZhbHVlLmNvbnN0cnVjdG9yLm5hbWUgfHwgJ09iamVjdCc7XG4gIHRocm93IG5ldyBUeXBlRXJyb3IoYENvbnZlcnRpbmcgY2lyY3VsYXIgc3RydWN0dXJlIHRvIEpTT05cbi0tPiBzdGFydGluZyBhdCBvYmplY3Qgd2l0aCBjb25zdHJ1Y3RvciAnJHt2YWx1ZUNvbnN0cnVjdG9yTmFtZX0nXG4tLS0gcHJvcGVydHkgJyR7a2V5fScgY2xvc2VzIHRoZSBjaXJjbGVgKTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtZnVuY3Rpb24tdHlwZVxuZnVuY3Rpb24gaGFuZGxlRnVuY3Rpb24odmFsdWU6IEZ1bmN0aW9uLCBmdW5jdGlvblRleHRzOiBzdHJpbmdbXSwgZnVsbE9wdGlvbnM6IFRvSnNvbk9wdGlvbnMpOiB1bmtub3duIHtcbiAgaWYgKGZ1bGxPcHRpb25zLmZ1bmN0aW9uSGFuZGxpbmdNb2RlID09PSBGdW5jdGlvbkhhbmRsaW5nTW9kZS5FeGNsdWRlKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCBpbmRleCA9IGZ1bmN0aW9uVGV4dHMubGVuZ3RoO1xuICBjb25zdCBmdW5jdGlvblRleHQgPSBmdWxsT3B0aW9ucy5mdW5jdGlvbkhhbmRsaW5nTW9kZSA9PT0gRnVuY3Rpb25IYW5kbGluZ01vZGUuRnVsbFxuICAgID8gdmFsdWUudG9TdHJpbmcoKVxuICAgIDogYGZ1bmN0aW9uICR7dmFsdWUubmFtZSB8fCAnYW5vbnltb3VzJ30oKSB7IC8qIC4uLiAqLyB9YDtcbiAgZnVuY3Rpb25UZXh0cy5wdXNoKGZ1bmN0aW9uVGV4dCk7XG4gIHJldHVybiBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuRnVuY3Rpb24sIGluZGV4KTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlT2JqZWN0KFxuICB2YWx1ZTogb2JqZWN0LFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAodXNlZE9iamVjdHMuaGFzKHZhbHVlKSkge1xuICAgIHJldHVybiBoYW5kbGVDaXJjdWxhclJlZmVyZW5jZSh2YWx1ZSwga2V5LCBmdWxsT3B0aW9ucyk7XG4gIH1cblxuICB1c2VkT2JqZWN0cy5hZGQodmFsdWUpO1xuXG4gIGlmIChjYW5Vc2VUb0pTT04pIHtcbiAgICBjb25zdCB0b0pTT05SZXN1bHQgPSB0cnlIYW5kbGVUb0pTT04odmFsdWUsIGtleSwgZGVwdGgsIGZ1bGxPcHRpb25zLCBmdW5jdGlvblRleHRzLCB1c2VkT2JqZWN0cyk7XG4gICAgaWYgKHRvSlNPTlJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdG9KU09OUmVzdWx0O1xuICAgIH1cbiAgfVxuXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiBoYW5kbGVBcnJheSh2YWx1ZSwgZGVwdGgsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgfVxuXG4gIGlmIChkZXB0aCA+IGZ1bGxPcHRpb25zLm1heERlcHRoKSB7XG4gICAgcmV0dXJuIG1ha2VQbGFjZWhvbGRlcihUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZCk7XG4gIH1cblxuICBpZiAodmFsdWUgaW5zdGFuY2VvZiBFcnJvciAmJiBmdWxsT3B0aW9ucy5zaG91bGRIYW5kbGVFcnJvcnMpIHtcbiAgICByZXR1cm4gZXJyb3JUb1N0cmluZyh2YWx1ZSk7XG4gIH1cblxuICByZXR1cm4gaGFuZGxlUGxhaW5PYmplY3QodmFsdWUsIGRlcHRoLCBjYW5Vc2VUb0pTT04sIGZ1bGxPcHRpb25zLCBmdW5jdGlvblRleHRzLCB1c2VkT2JqZWN0cyk7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZVBsYWluT2JqZWN0KFxuICB2YWx1ZTogb2JqZWN0LFxuICBkZXB0aDogbnVtYmVyLFxuICBjYW5Vc2VUb0pTT046IGJvb2xlYW4sXG4gIGZ1bGxPcHRpb25zOiBUb0pzb25PcHRpb25zLFxuICBmdW5jdGlvblRleHRzOiBzdHJpbmdbXSxcbiAgdXNlZE9iamVjdHM6IFdlYWtTZXQ8b2JqZWN0PlxuKTogdW5rbm93biB7XG4gIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh2YWx1ZSk7XG4gIGlmIChmdWxsT3B0aW9ucy5zaG91bGRTb3J0S2V5cykge1xuICAgIGVudHJpZXMuc29ydCgoW2tleTFdLCBba2V5Ml0pID0+IGtleTEubG9jYWxlQ29tcGFyZShrZXkyKSk7XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIGVudHJpZXMubWFwKChba2V5MiwgdmFsdWUyXSkgPT4gW1xuICAgICAga2V5MixcbiAgICAgIHRvUGxhaW5PYmplY3QodmFsdWUyLCBrZXkyLCBkZXB0aCArIDEsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKVxuICAgIF0pXG4gICk7XG59XG5cbmZ1bmN0aW9uIG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihrZXk6IFRva2VuU3Vic3RpdHV0aW9uS2V5KTogc3RyaW5nIHtcbiAgcmV0dXJuIGB7IFwiW1ske2tleX1dXVwiOiBudWxsIH1gO1xufVxuXG5mdW5jdGlvbiBtYWtlUGxhY2Vob2xkZXIoa2V5OiBUb2tlblN1YnN0aXR1dGlvbktleSwgaW5kZXg/OiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gYFtbJHtrZXl9JHtpbmRleD8udG9TdHJpbmcoKSA/PyAnJ31dXWA7XG59XG5cbmZ1bmN0aW9uIHRvUGxhaW5PYmplY3QoXG4gIHZhbHVlOiB1bmtub3duLFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiAoZGVwdGggPT09IDAgfHwgZnVsbE9wdGlvbnMuc2hvdWxkSGFuZGxlVW5kZWZpbmVkKVxuICAgICAgPyBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuVW5kZWZpbmVkKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIGhhbmRsZUZ1bmN0aW9uKHZhbHVlLCBmdW5jdGlvblRleHRzLCBmdWxsT3B0aW9ucyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0JyB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBoYW5kbGVPYmplY3QodmFsdWUsIGtleSwgZGVwdGgsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbn1cblxuZnVuY3Rpb24gdHJ5SGFuZGxlVG9KU09OKFxuICB2YWx1ZTogb2JqZWN0LFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgZnVsbE9wdGlvbnM6IFRvSnNvbk9wdGlvbnMsXG4gIGZ1bmN0aW9uVGV4dHM6IHN0cmluZ1tdLFxuICB1c2VkT2JqZWN0czogV2Vha1NldDxvYmplY3Q+XG4pOiB1bmtub3duIHtcbiAgY29uc3QgdG9KU09OID0gKHZhbHVlIGFzIFBhcnRpYWw8SlNPTlNlcmlhbGl6YWJsZT4pLnRvSlNPTjtcbiAgaWYgKHR5cGVvZiB0b0pTT04gPT09ICdmdW5jdGlvbicpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSB0b0pTT04uY2FsbCh2YWx1ZSwga2V5KTtcbiAgICAgIHJldHVybiB0b1BsYWluT2JqZWN0KG5ld1ZhbHVlLCBrZXksIGRlcHRoLCBmYWxzZSwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZnVsbE9wdGlvbnMuc2hvdWxkQ2F0Y2hUb0pTT05FcnJvcnMpIHtcbiAgICAgICAgcmV0dXJuIG1ha2VQbGFjZWhvbGRlcihUb2tlblN1YnN0aXR1dGlvbktleS5Ub0pTT05GYWlsZWQpO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFZQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsa0JBQWtCO0FBS3BCLElBQUssdUJBQUwsa0JBQUtBLDBCQUFMO0FBSUwsRUFBQUEsc0JBQUEsYUFBVTtBQUlWLEVBQUFBLHNCQUFBLFVBQU87QUFJUCxFQUFBQSxzQkFBQSxjQUFXO0FBWkQsU0FBQUE7QUFBQSxHQUFBO0FBMEZaLE1BQU0sZ0JBQWdCO0FBcUNm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
|
319
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL09iamVjdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgT2JqZWN0cy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFVuZGVmaW5lZE9uUGFydGlhbERlZXAgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQgdHlwZSB7XG4gIE1heWJlUmV0dXJuLFxuICBTdHJpbmdLZXlzXG59IGZyb20gJy4vVHlwZS50cyc7XG5cbmltcG9ydCB7XG4gIGVycm9yVG9TdHJpbmcsXG4gIHRocm93RXhwcmVzc2lvblxufSBmcm9tICcuL0Vycm9yLnRzJztcbmltcG9ydCB7IHJlcGxhY2VBbGwgfSBmcm9tICcuL1N0cmluZy50cyc7XG5cbi8qKlxuICogU3BlY2lmaWVzIGhvdyBmdW5jdGlvbnMgc2hvdWxkIGJlIGhhbmRsZWQgaW4gdGhlIEpTT04gb3V0cHV0LlxuICovXG5leHBvcnQgZW51bSBGdW5jdGlvbkhhbmRsaW5nTW9kZSB7XG4gIC8qKlxuICAgKiBFeGNsdWRlcyBmdW5jdGlvbnMgZnJvbSB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBFeGNsdWRlID0gJ2V4Y2x1ZGUnLFxuICAvKipcbiAgICogSW5jbHVkZXMgdGhlIGZ1bGwgZnVuY3Rpb24gZGVmaW5pdGlvbiBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBGdWxsID0gJ2Z1bGwnLFxuICAvKipcbiAgICogSW5jbHVkZXMgb25seSB0aGUgZnVuY3Rpb24gbmFtZSBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqL1xuICBOYW1lT25seSA9ICduYW1lT25seSdcbn1cblxuZW51bSBUb2tlblN1YnN0aXR1dGlvbktleSB7XG4gIENpcmN1bGFyUmVmZXJlbmNlID0gJ0NpcmN1bGFyUmVmZXJlbmNlJyxcbiAgRnVuY3Rpb24gPSAnRnVuY3Rpb24nLFxuICBNYXhEZXB0aExpbWl0UmVhY2hlZCA9ICdNYXhEZXB0aExpbWl0UmVhY2hlZCcsXG4gIE1heERlcHRoTGltaXRSZWFjaGVkQXJyYXkgPSAnTWF4RGVwdGhMaW1pdFJlYWNoZWRBcnJheScsXG4gIFRvSlNPTkZhaWxlZCA9ICdUb0pTT05GYWlsZWQnLFxuICBVbmRlZmluZWQgPSAnVW5kZWZpbmVkJ1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbnZlcnRpbmcgYW4gb2JqZWN0IHRvIEpTT04uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9Kc29uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaG93IGZ1bmN0aW9ucyBzaG91bGQgYmUgaGFuZGxlZCBpbiB0aGUgSlNPTiBvdXRwdXQgKGRlZmF1bHQ6IGBleGNsdWRlYCkuXG4gICAqL1xuICBmdW5jdGlvbkhhbmRsaW5nTW9kZTogRnVuY3Rpb25IYW5kbGluZ01vZGU7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1heGltdW0gZGVwdGggb2YgbmVzdGVkIG9iamVjdHMgdG8gaW5jbHVkZSBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIFVzZSBgLTFgIGZvciBubyBsaW1pdC5cbiAgICogRGVmYXVsdHMgdG8gYC0xYC5cbiAgICovXG4gIG1heERlcHRoOiBudW1iZXI7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBjYXRjaCBlcnJvcnMgaW4gYHRvSlNPTigpYCBhbmQgcmVwbGFjZSB0aGVtIHdpdGggYSBwbGFjZWhvbGRlci5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHNob3VsZENhdGNoVG9KU09ORXJyb3JzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdG8gaGFuZGxlIGNpcmN1bGFyIHJlZmVyZW5jZXMgaW4gdGhlIEpTT04gb3V0cHV0LlxuICAgKiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgKi9cbiAgc2hvdWxkSGFuZGxlQ2lyY3VsYXJSZWZlcmVuY2VzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdG8gaGFuZGxlIGVycm9ycyBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBzaG91bGRIYW5kbGVFcnJvcnM6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBoYW5kbGUgdW5kZWZpbmVkIHZhbHVlcyBpbiB0aGUgSlNPTiBvdXRwdXQuXG4gICAqIERlZmF1bHRzIHRvIGBmYWxzZWAuXG4gICAqL1xuICBzaG91bGRIYW5kbGVVbmRlZmluZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciB0byBzb3J0IHRoZSBrZXlzIG9mIHRoZSBKU09OIG91dHB1dC5cbiAgICogRGVmYXVsdHMgdG8gYGZhbHNlYC5cbiAgICovXG4gIHNob3VsZFNvcnRLZXlzOiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBpbmRlbnRhdGlvbiBvZiB0aGUgSlNPTiBvdXRwdXQuIFRoaXMgY2FuIGJlIGEgbnVtYmVyIG9mIHNwYWNlcyBvciBhIHN0cmluZy4gRGVmYXVsdHMgdG8gYDJgLlxuICAgKi9cbiAgc3BhY2U6IG51bWJlciB8IHN0cmluZztcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgc3Vic3RpdHV0aW9ucyB0byB1c2UgaW4gdGhlIEpTT04gb3V0cHV0LlxuICAgKi9cbiAgdG9rZW5TdWJzdGl0dXRpb25zOiBQYXJ0aWFsPFRva2VuU3Vic3RpdHV0aW9ucz47XG59XG5cbmludGVyZmFjZSBBcHBseVN1YnN0aXR1dGlvbnNPcHRpb25zIHtcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW107XG4gIGluZGV4OiBudW1iZXI7XG4gIGtleTogVG9rZW5TdWJzdGl0dXRpb25LZXk7XG4gIHN1YnN0aXR1dGlvbnM6IFRva2VuU3Vic3RpdHV0aW9ucztcbn1cblxuaW50ZXJmYWNlIEpTT05TZXJpYWxpemFibGUge1xuICB0b0pTT04oLi4uYXJnczogdW5rbm93bltdKTogdW5rbm93bjtcbn1cblxuaW50ZXJmYWNlIFRva2VuU3Vic3RpdHV0aW9ucyB7XG4gIGNpcmN1bGFyUmVmZXJlbmNlOiBzdHJpbmc7XG4gIG1heERlcHRoTGltaXRSZWFjaGVkOiBzdHJpbmc7XG4gIHRvSlNPTkZhaWxlZDogc3RyaW5nO1xufVxuXG5jb25zdCBLRVlfU0VQQVJBVE9SID0gJy4nO1xuXG4vKipcbiAqIEFzc2lnbnMgcHJvcGVydGllcyBmcm9tIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIGEgdGFyZ2V0IG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZSAtIFRoZSBzb3VyY2Ugb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdGFyZ2V0IG9iamVjdCB3aXRoIHRoZSBhc3NpZ25lZCBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBvYmplY3QsIFU+KHRhcmdldDogVCwgc291cmNlOiBVKTogVCAmIFU7XG5cbi8qKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZTEgLSBUaGUgZmlyc3Qgc291cmNlIG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHNvdXJjZTIgLSBUaGUgc2Vjb25kIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSB0YXJnZXQgb2JqZWN0IHdpdGggdGhlIGFzc2lnbmVkIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdCwgVSwgVj4odGFyZ2V0OiBULCBzb3VyY2UxOiBVLCBzb3VyY2UyOiBWKTogVCAmIFUgJiBWO1xuXG4vKipcbiAqIEFzc2lnbnMgcHJvcGVydGllcyBmcm9tIG9uZSBvciBtb3JlIHNvdXJjZSBvYmplY3RzIHRvIGEgdGFyZ2V0IG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIHRhcmdldCAtIFRoZSB0YXJnZXQgb2JqZWN0IHRvIGFzc2lnbiBwcm9wZXJ0aWVzIHRvLlxuICogQHBhcmFtIHNvdXJjZTEgLSBUaGUgZmlyc3Qgc291cmNlIG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyBmcm9tLlxuICogQHBhcmFtIHNvdXJjZTIgLSBUaGUgc2Vjb25kIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEBwYXJhbSBzb3VyY2UzIC0gVGhlIHRoaXJkIHNvdXJjZSBvYmplY3QgdG8gYXNzaWduIHByb3BlcnRpZXMgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSB0YXJnZXQgb2JqZWN0IHdpdGggdGhlIGFzc2lnbmVkIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ25XaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdCwgVSwgViwgVz4odGFyZ2V0OiBULCBzb3VyY2UxOiBVLCBzb3VyY2UyOiBWLCBzb3VyY2UzOiBXKTogVCAmIFUgJiBWICYgVztcblxuLyoqXG4gKiBBc3NpZ25zIHByb3BlcnRpZXMgZnJvbSBvbmUgb3IgbW9yZSBzb3VyY2Ugb2JqZWN0cyB0byBhIHRhcmdldCBvYmplY3QsIGluY2x1ZGluZyBub24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICpcbiAqIEBwYXJhbSB0YXJnZXQgLSBUaGUgdGFyZ2V0IG9iamVjdCB0byBhc3NpZ24gcHJvcGVydGllcyB0by5cbiAqIEBwYXJhbSBzb3VyY2VzIC0gVGhlIHNvdXJjZSBvYmplY3RzIHRvIGFzc2lnbiBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgdGFyZ2V0IG9iamVjdCB3aXRoIHRoZSBhc3NpZ25lZCBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzKHRhcmdldDogb2JqZWN0LCAuLi5zb3VyY2VzOiBvYmplY3RbXSk6IG9iamVjdCB7XG4gIHJldHVybiBfYXNzaWduV2l0aE5vbkVudW1lcmFibGVQcm9wZXJ0aWVzKHRhcmdldCwgLi4uc291cmNlcyk7XG59XG5cbi8qKlxuICogQ2xvbmVzIGFuIG9iamVjdCwgaW5jbHVkaW5nIG5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gY2xvbmUuXG4gKiBAcmV0dXJucyBBIG5ldyBvYmplY3Qgd2l0aCB0aGUgc2FtZSBwcm9wZXJ0aWVzIGFzIHRoZSBvcmlnaW5hbCBvYmplY3QsIGluY2x1ZGluZyBub24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVXaXRoTm9uRW51bWVyYWJsZVByb3BlcnRpZXM8VCBleHRlbmRzIG9iamVjdD4ob2JqOiBUKTogVCB7XG4gIHJldHVybiBPYmplY3QuY3JlYXRlKGdldFByb3RvdHlwZU9mKG9iaiksIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG9iaikpIGFzIFQ7XG59XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIHZhbHVlcyB0byBkZXRlcm1pbmUgaWYgdGhleSBhcmUgZGVlcGx5IGVxdWFsLlxuICpcbiAqIEBwYXJhbSBhIC0gVGhlIGZpcnN0IHZhbHVlIHRvIGNvbXBhcmUuXG4gKiBAcGFyYW0gYiAtIFRoZSBzZWNvbmQgdmFsdWUgdG8gY29tcGFyZS5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdmFsdWVzIGFyZSBkZWVwbHkgZXF1YWwsIG90aGVyd2lzZSBgZmFsc2VgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVlcEVxdWFsKGE6IHVua25vd24sIGI6IHVua25vd24pOiBib29sZWFuIHtcbiAgaWYgKGEgPT09IGIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgYSAhPT0gJ29iamVjdCcgfHwgdHlwZW9mIGIgIT09ICdvYmplY3QnIHx8IGEgPT09IG51bGwgfHwgYiA9PT0gbnVsbCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGtleXNBID0gZ2V0QWxsS2V5cyhhKTtcbiAgY29uc3Qga2V5c0IgPSBnZXRBbGxLZXlzKGIpO1xuXG4gIGlmIChrZXlzQS5sZW5ndGggIT09IGtleXNCLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGFSZWNvcmQgPSBhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBjb25zdCBiUmVjb3JkID0gYiBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzQSkge1xuICAgIGlmICgha2V5c0IuaW5jbHVkZXMoa2V5KSB8fCAhZGVlcEVxdWFsKGFSZWNvcmRba2V5XSwgYlJlY29yZFtrZXldKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIERlbGV0ZXMgbXVsdGlwbGUgcHJvcGVydGllcyBmcm9tIGFuIG9iamVjdC5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgb2JqZWN0LlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gZGVsZXRlIHRoZSBwcm9wZXJ0aWVzIGZyb20uXG4gKiBAcGFyYW0gcHJvcGVydHlOYW1lcyAtIFRoZSBuYW1lcyBvZiB0aGUgcHJvcGVydGllcyB0byBkZWxldGUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgYW55IG9mIHRoZSBwcm9wZXJ0aWVzIHdlcmUgcHJlc2VudCwgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWxldGVQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBvYmplY3Q+KG9iajogVCwgcHJvcGVydHlOYW1lczogKGtleW9mIFQpW10pOiBib29sZWFuIHtcbiAgbGV0IGFucyA9IGZhbHNlO1xuXG4gIGZvciAoY29uc3QgcHJvcGVydHlOYW1lIG9mIHByb3BlcnR5TmFtZXMpIHtcbiAgICBhbnMgPSBkZWxldGVQcm9wZXJ0eShvYmosIHByb3BlcnR5TmFtZSkgfHwgYW5zO1xuICB9XG5cbiAgcmV0dXJuIGFucztcbn1cblxuLyoqXG4gKiBEZWxldGVzIGEgcHJvcGVydHkgZnJvbSBhbiBvYmplY3QuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIG9iamVjdC5cbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIGRlbGV0ZSB0aGUgcHJvcGVydHkgZnJvbS5cbiAqIEBwYXJhbSBwcm9wZXJ0eU5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gZGVsZXRlLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBwcm9wZXJ0eSB3YXMgcHJlc2VudCwgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWxldGVQcm9wZXJ0eTxUIGV4dGVuZHMgb2JqZWN0PihvYmo6IFQsIHByb3BlcnR5TmFtZToga2V5b2YgVCk6IGJvb2xlYW4ge1xuICBpZiAoIU9iamVjdC5oYXNPd24ob2JqLCBwcm9wZXJ0eU5hbWUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHluYW1pYy1kZWxldGVcbiAgZGVsZXRlIG9ialtwcm9wZXJ0eU5hbWVdO1xuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBHZXRzIGFsbCBlbnRyaWVzIG9mIGFuIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0gb2JqIC0gVGhlIG9iamVjdCB0byBnZXQgdGhlIGVudHJpZXMgb2YuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBhbGwgZW50cmllcyBvZiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWxsRW50cmllczxUIGV4dGVuZHMgb2JqZWN0PihvYmo6IFQpOiBbU3RyaW5nS2V5czxUPiwgVFtTdHJpbmdLZXlzPFQ+XV1bXSB7XG4gIHJldHVybiBnZXRBbGxLZXlzKG9iaikubWFwKChrZXkpID0+IFtrZXksIG9ialtrZXldXSk7XG59XG5cbi8qKlxuICogR2V0cyBhbGwga2V5cyBvZiBhbiBvYmplY3QuXG4gKiBJbmNsdWRlcyBmaWVsZHMgYW5kIHByb3BlcnRpZXMuXG4gKlxuICogQHBhcmFtIG9iaiAtIFRoZSBvYmplY3QgdG8gZ2V0IHRoZSBrZXlzIG9mLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgYWxsIGtleXMgb2YgdGhlIG9iamVjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFsbEtleXM8VCBleHRlbmRzIG9iamVjdD4ob2JqOiBUKTogU3RyaW5nS2V5czxUPltdIHtcbiAgY29uc3Qga2V5czogU3RyaW5nS2V5czxUPltdID0gW107XG4gIGxldCBjdXJyZW50OiBudWxsIHwgb2JqZWN0ID0gb2JqO1xuICB3aGlsZSAoY3VycmVudCkge1xuICAgIGNvbnN0IGRlc2NyaXB0b3JzID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoY3VycmVudCkgYXMgUmVjb3JkPHN0cmluZywgUHJvcGVydHlEZXNjcmlwdG9yPjtcbiAgICBmb3IgKGNvbnN0IFtrZXksIGRlc2NyaXB0b3JdIG9mIE9iamVjdC5lbnRyaWVzKGRlc2NyaXB0b3JzKSkge1xuICAgICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaGFzR2V0dGVyID0gdHlwZW9mIGRlc2NyaXB0b3IuZ2V0ID09PSAnZnVuY3Rpb24nO1xuICAgICAgY29uc3QgaGFzU2V0dGVyID0gdHlwZW9mIGRlc2NyaXB0b3Iuc2V0ID09PSAnZnVuY3Rpb24nO1xuICAgICAgaWYgKGhhc0dldHRlciB8fCBoYXNTZXR0ZXIpIHtcbiAgICAgICAgaWYgKGhhc0dldHRlciAmJiBoYXNTZXR0ZXIpIHtcbiAgICAgICAgICBrZXlzLnB1c2goa2V5IGFzIFN0cmluZ0tleXM8VD4pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoZGVzY3JpcHRvci5lbnVtZXJhYmxlICYmIGRlc2NyaXB0b3Iud3JpdGFibGUpIHtcbiAgICAgICAga2V5cy5wdXNoKGtleSBhcyBTdHJpbmdLZXlzPFQ+KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjdXJyZW50ID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKGN1cnJlbnQpIGFzIG51bGwgfCBvYmplY3Q7XG4gIH1cbiAgcmV0dXJuIGtleXMuc29ydCgpO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIHZhbHVlIG9mIGEgbmVzdGVkIHByb3BlcnR5IGZyb20gYW4gb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIGdldCB0aGUgbmVzdGVkIHByb3BlcnR5IHZhbHVlIGZyb20uXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIHRoZSBuZXN0ZWQgcHJvcGVydHkuXG4gKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIG5lc3RlZCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5lc3RlZFByb3BlcnR5VmFsdWUob2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgcGF0aDogc3RyaW5nKTogdW5rbm93biB7XG4gIGxldCBub2RlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZCA9IG9iajtcbiAgY29uc3Qga2V5cyA9IHBhdGguc3BsaXQoS0VZX1NFUEFSQVRPUik7XG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBub2RlID0gbm9kZVtrZXldIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIG5vZGU7XG59XG5cbi8qKlxuICogR2V0cyB0aGUgcHJvdG90eXBlIG9mIHRoZSBzcGVjaWZpZWQgb2JqZWN0LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSBvYmplY3QuXG4gKiBAcGFyYW0gaW5zdGFuY2UgLSBUaGUgb2JqZWN0IGluc3RhbmNlIHRvIHJldHJpZXZlIHRoZSBwcm90b3R5cGUgb2YuXG4gKiBAcmV0dXJucyBUaGUgcHJvdG90eXBlIG9mIHRoZSBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm90b3R5cGVPZjxUPihpbnN0YW5jZTogVCk6IFQge1xuICBpZiAoaW5zdGFuY2UgPT09IHVuZGVmaW5lZCB8fCBpbnN0YW5jZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKGluc3RhbmNlKSBhcyBUO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgbmFtZSBvZiBhIHByb3BlcnR5IG9mIGEgZ2l2ZW4gdHlwZSBgVGAuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIG9iamVjdCBjb250YWluaW5nIHRoZSBwcm9wZXJ0eS5cbiAqIEBwYXJhbSBuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IGFzIGEgc3RyaW5nLlxuICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbmFtZW9mPFQ+KG5hbWU6IEV4dHJhY3Q8a2V5b2YgVCwgc3RyaW5nPik6IHN0cmluZyB7XG4gIHJldHVybiBuYW1lO1xufVxuXG4vKipcbiAqIE5vcm1hbGl6ZXMgb3B0aW9uYWwgcHJvcGVydGllcyB0byBhbGxvdyBgdW5kZWZpbmVkYCBhc3NpZ25tZW50IGluIHN0cmljdCBtb2RlLlxuICpcbiAqIFRoaXMgdXRpbGl0eSBwcm92aWRlcyBhIHdvcmthcm91bmQgZm9yIHRoZSBgZXhhY3RPcHRpb25hbFByb3BlcnR5VHlwZXNgIFR5cGVTY3JpcHQgZmxhZyxcbiAqIHdoaWNoIHByb2hpYml0cyBkaXJlY3RseSBhc3NpZ25pbmcgYHVuZGVmaW5lZGAgdG8gb3B0aW9uYWwgcHJvcGVydGllcyB3aGVuIHRoZSB0eXBlXG4gKiBleHBsaWNpdGx5IG9taXRzIGB1bmRlZmluZWRgLlxuICpcbiAqIEV4YW1wbGU6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiAvLyBXaXRoIGBleGFjdE9wdGlvbmFsUHJvcGVydHlUeXBlczogdHJ1ZWBcbiAqIGNvbnN0IHg6IHsgcHJvcD86IHN0cmluZyB9ID0geyBwcm9wOiB1bmRlZmluZWQgfTsgLy8gQ29tcGlsZXIgZXJyb3JcbiAqXG4gKiAvLyBVc2luZyB0aGlzIHV0aWxpdHk6XG4gKiBjb25zdCB5OiB7IHByb3A/OiBzdHJpbmcgfSA9IG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllczx7IHByb3A/OiBzdHJpbmcgfT4oeyBwcm9wOiB1bmRlZmluZWQgfSk7IC8vIFdvcmtzXG4gKiBgYGBcbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdGFyZ2V0IHR5cGUgd2l0aCBvcHRpb25hbCBwcm9wZXJ0aWVzIHRvIG5vcm1hbGl6ZS5cbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIG5vcm1hbGl6ZSwgYWxsb3dpbmcgZXhwbGljaXQgYHVuZGVmaW5lZGAgZm9yIG9wdGlvbmFsIHByb3BlcnRpZXMuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBvYmplY3QsIGNvbXBhdGlibGUgd2l0aCBgZXhhY3RPcHRpb25hbFByb3BlcnR5VHlwZXNgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzPFQ+KG9iajogVW5kZWZpbmVkT25QYXJ0aWFsRGVlcDxUPik6IFQge1xuICByZXR1cm4gb2JqIGFzIFQ7XG59XG5cbi8qKlxuICogU2V0cyB0aGUgdmFsdWUgb2YgYSBuZXN0ZWQgcHJvcGVydHkgaW4gYW4gb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBvYmogLSBUaGUgb2JqZWN0IHRvIHNldCB0aGUgbmVzdGVkIHByb3BlcnR5IHZhbHVlIGluLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byB0aGUgbmVzdGVkIHByb3BlcnR5LlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldE5lc3RlZFByb3BlcnR5VmFsdWUob2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgcGF0aDogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihgUHJvcGVydHkgcGF0aCAke3BhdGh9IG5vdCBmb3VuZGApO1xuICBsZXQgbm9kZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCB1bmRlZmluZWQgPSBvYmo7XG4gIGNvbnN0IGtleXMgPSBwYXRoLnNwbGl0KEtFWV9TRVBBUkFUT1IpO1xuICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzLnNsaWNlKDAsIC0xKSkge1xuICAgIGlmIChub2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICBub2RlID0gbm9kZVtrZXldIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgbGFzdEtleSA9IGtleXMuYXQoLTEpO1xuICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkIHx8IGxhc3RLZXkgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IGVycm9yO1xuICB9XG5cbiAgbm9kZVtsYXN0S2V5XSA9IHZhbHVlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgZ2l2ZW4gdmFsdWUgdG8gYSBKU09OIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gYmUgY29udmVydGVkIHRvIEpTT04uIFRoaXMgY2FuIGJlIG9mIGFueSB0eXBlLlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjdXN0b21pemluZyB0aGUgSlNPTiBjb252ZXJzaW9uIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGlucHV0IHZhbHVlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uKHZhbHVlOiB1bmtub3duLCBvcHRpb25zOiBQYXJ0aWFsPFRvSnNvbk9wdGlvbnM+ID0ge30pOiBzdHJpbmcge1xuICBjb25zdCBERUZBVUxUX09QVElPTlM6IHsgdG9rZW5TdWJzdGl0dXRpb25zOiBUb2tlblN1YnN0aXR1dGlvbnMgfSAmIFRvSnNvbk9wdGlvbnMgPSB7XG4gICAgZnVuY3Rpb25IYW5kbGluZ01vZGU6IEZ1bmN0aW9uSGFuZGxpbmdNb2RlLkV4Y2x1ZGUsXG4gICAgbWF4RGVwdGg6IC0xLFxuICAgIHNob3VsZENhdGNoVG9KU09ORXJyb3JzOiBmYWxzZSxcbiAgICBzaG91bGRIYW5kbGVDaXJjdWxhclJlZmVyZW5jZXM6IGZhbHNlLFxuICAgIHNob3VsZEhhbmRsZUVycm9yczogZmFsc2UsXG4gICAgc2hvdWxkSGFuZGxlVW5kZWZpbmVkOiBmYWxzZSxcbiAgICBzaG91bGRTb3J0S2V5czogZmFsc2UsXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLW1hZ2ljLW51bWJlcnNcbiAgICBzcGFjZTogMixcbiAgICB0b2tlblN1YnN0aXR1dGlvbnM6IHtcbiAgICAgIGNpcmN1bGFyUmVmZXJlbmNlOiBtYWtlT2JqZWN0VG9rZW5TdWJzdGl0dXRpb24oVG9rZW5TdWJzdGl0dXRpb25LZXkuQ2lyY3VsYXJSZWZlcmVuY2UpLFxuICAgICAgbWF4RGVwdGhMaW1pdFJlYWNoZWQ6IG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZCksXG4gICAgICB0b0pTT05GYWlsZWQ6IG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihUb2tlblN1YnN0aXR1dGlvbktleS5Ub0pTT05GYWlsZWQpXG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGZ1bGxPcHRpb25zID0ge1xuICAgIC4uLkRFRkFVTFRfT1BUSU9OUyxcbiAgICAuLi5vcHRpb25zLFxuICAgIHRva2VuU3Vic3RpdHV0aW9uczoge1xuICAgICAgLi4uREVGQVVMVF9PUFRJT05TLnRva2VuU3Vic3RpdHV0aW9ucyxcbiAgICAgIC4uLm9wdGlvbnMudG9rZW5TdWJzdGl0dXRpb25zXG4gICAgfVxuICB9O1xuXG4gIGlmIChmdWxsT3B0aW9ucy5tYXhEZXB0aCA9PT0gLTEpIHtcbiAgICBmdWxsT3B0aW9ucy5tYXhEZXB0aCA9IEluZmluaXR5O1xuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25UZXh0czogc3RyaW5nW10gPSBbXTtcbiAgY29uc3QgdXNlZE9iamVjdHMgPSBuZXcgV2Vha1NldDxvYmplY3Q+KCk7XG5cbiAgY29uc3QgcGxhaW5PYmplY3QgPSB0b1BsYWluT2JqZWN0KHZhbHVlLCAnJywgMCwgdHJ1ZSwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgbGV0IGpzb24gPSBKU09OLnN0cmluZ2lmeShwbGFpbk9iamVjdCwgbnVsbCwgZnVsbE9wdGlvbnMuc3BhY2UpID8/ICcnO1xuICBqc29uID0gcmVwbGFjZUFsbChqc29uLCAvXCJcXFtcXFsoPzxLZXk+W0EtWmEtel0rKSg/PEluZGV4PlxcZCopXFxdXFxdXCIvZywgKF8sIGtleSwgaW5kZXhTdHIpID0+XG4gICAgYXBwbHlTdWJzdGl0dXRpb25zKHtcbiAgICAgIGZ1bmN0aW9uVGV4dHMsXG4gICAgICBpbmRleDogaW5kZXhTdHIgPyBwYXJzZUludChpbmRleFN0ciwgMTApIDogMCxcbiAgICAgIGtleToga2V5IGFzIFRva2VuU3Vic3RpdHV0aW9uS2V5LFxuICAgICAgc3Vic3RpdHV0aW9uczogZnVsbE9wdGlvbnMudG9rZW5TdWJzdGl0dXRpb25zXG4gICAgfSkpO1xuICByZXR1cm4ganNvbjtcbn1cblxuZnVuY3Rpb24gX2Fzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh0YXJnZXQ6IG9iamVjdCwgLi4uc291cmNlczogb2JqZWN0W10pOiBvYmplY3Qge1xuICBmb3IgKGNvbnN0IHNvdXJjZSBvZiBzb3VyY2VzKSB7XG4gICAgY29uc3QgZGVzY3JpcHRvcnMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhzb3VyY2UpO1xuXG4gICAgZm9yIChjb25zdCBba2V5LCBkZXNjcmlwdG9yXSBvZiBPYmplY3QuZW50cmllcyhkZXNjcmlwdG9ycykpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIEF2b2lkIHJlZGVmaW5pbmcgcmVhZC1vbmx5IHByb3BlcnRpZXMgKGVzcGVjaWFsbHkgYHByb3RvdHlwZWApXG4gICAgICAgIGlmIChcbiAgICAgICAgICBrZXkgPT09ICdwcm90b3R5cGUnXG4gICAgICAgICAgfHwgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpPy53cml0YWJsZSA9PT0gZmFsc2VcbiAgICAgICAgICAgICYmICFPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KT8uY29uZmlndXJhYmxlKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgZGVzY3JpcHRvcik7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gU2lsZW50bHkgaWdub3JlIGlmIGRlZmluZVByb3BlcnR5IGZhaWxzXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgc291cmNlUHJvdG90eXBlcyA9IHNvdXJjZXNcbiAgICAubWFwKChzb3VyY2UpID0+IGdldFByb3RvdHlwZU9mPG9iamVjdCB8IHVuZGVmaW5lZD4oc291cmNlKSlcbiAgICAuZmlsdGVyKChwcm90byk6IHByb3RvIGlzIG9iamVjdCA9PiAhIXByb3RvKTtcblxuICBpZiAoc291cmNlUHJvdG90eXBlcy5sZW5ndGggPiAwKSB7XG4gICAgY29uc3QgdGFyZ2V0UHJvdG90eXBlID0gX2Fzc2lnbldpdGhOb25FbnVtZXJhYmxlUHJvcGVydGllcyh7fSwgZ2V0UHJvdG90eXBlT2YodGFyZ2V0KSwgLi4uc291cmNlUHJvdG90eXBlcyk7XG5cbiAgICB0cnkge1xuICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRhcmdldCwgdGFyZ2V0UHJvdG90eXBlKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIFNpbGVudGx5IGlnbm9yZSBpZiBzZXRQcm90b3R5cGVPZiBmYWlsc1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0YXJnZXQ7XG59XG5cbmZ1bmN0aW9uIGFwcGx5U3Vic3RpdHV0aW9ucyhvcHRpb25zOiBBcHBseVN1YnN0aXR1dGlvbnNPcHRpb25zKTogTWF5YmVSZXR1cm48c3RyaW5nPiB7XG4gIHN3aXRjaCAob3B0aW9ucy5rZXkpIHtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LkNpcmN1bGFyUmVmZXJlbmNlOlxuICAgICAgcmV0dXJuIG9wdGlvbnMuc3Vic3RpdHV0aW9ucy5jaXJjdWxhclJlZmVyZW5jZTtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LkZ1bmN0aW9uOlxuICAgICAgcmV0dXJuIG9wdGlvbnMuZnVuY3Rpb25UZXh0c1tvcHRpb25zLmluZGV4XSA/PyB0aHJvd0V4cHJlc3Npb24obmV3IEVycm9yKGBGdW5jdGlvbiB3aXRoIGluZGV4ICR7b3B0aW9ucy5pbmRleC50b1N0cmluZygpfSBub3QgZm91bmRgKSk7XG4gICAgY2FzZSBUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZDpcbiAgICAgIHJldHVybiBvcHRpb25zLnN1YnN0aXR1dGlvbnMubWF4RGVwdGhMaW1pdFJlYWNoZWQ7XG4gICAgY2FzZSBUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZEFycmF5OlxuICAgICAgcmV0dXJuIGBBcnJheSgke29wdGlvbnMuaW5kZXgudG9TdHJpbmcoKX0pYDtcbiAgICBjYXNlIFRva2VuU3Vic3RpdHV0aW9uS2V5LlRvSlNPTkZhaWxlZDpcbiAgICAgIHJldHVybiBvcHRpb25zLnN1YnN0aXR1dGlvbnMudG9KU09ORmFpbGVkO1xuICAgIGNhc2UgVG9rZW5TdWJzdGl0dXRpb25LZXkuVW5kZWZpbmVkOlxuICAgICAgcmV0dXJuICd1bmRlZmluZWQnO1xuICAgIGRlZmF1bHQ6XG4gICAgICBicmVhaztcbiAgfVxufVxuXG5mdW5jdGlvbiBoYW5kbGVBcnJheShcbiAgdmFsdWU6IHVua25vd25bXSxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAoZGVwdGggPiBmdWxsT3B0aW9ucy5tYXhEZXB0aCkge1xuICAgIHJldHVybiBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuTWF4RGVwdGhMaW1pdFJlYWNoZWRBcnJheSwgdmFsdWUubGVuZ3RoKTtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZS5tYXAoKGl0ZW0sIGluZGV4KSA9PiB0b1BsYWluT2JqZWN0KGl0ZW0sIGluZGV4LnRvU3RyaW5nKCksIGRlcHRoICsgMSwgY2FuVXNlVG9KU09OLCBmdWxsT3B0aW9ucywgZnVuY3Rpb25UZXh0cywgdXNlZE9iamVjdHMpKTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlQ2lyY3VsYXJSZWZlcmVuY2UodmFsdWU6IG9iamVjdCwga2V5OiBzdHJpbmcsIGZ1bGxPcHRpb25zOiBUb0pzb25PcHRpb25zKTogdW5rbm93biB7XG4gIGlmIChmdWxsT3B0aW9ucy5zaG91bGRIYW5kbGVDaXJjdWxhclJlZmVyZW5jZXMpIHtcbiAgICByZXR1cm4gbWFrZVBsYWNlaG9sZGVyKFRva2VuU3Vic3RpdHV0aW9uS2V5LkNpcmN1bGFyUmVmZXJlbmNlKTtcbiAgfVxuICBjb25zdCB2YWx1ZUNvbnN0cnVjdG9yTmFtZSA9IHZhbHVlLmNvbnN0cnVjdG9yLm5hbWUgfHwgJ09iamVjdCc7XG4gIHRocm93IG5ldyBUeXBlRXJyb3IoYENvbnZlcnRpbmcgY2lyY3VsYXIgc3RydWN0dXJlIHRvIEpTT05cbi0tPiBzdGFydGluZyBhdCBvYmplY3Qgd2l0aCBjb25zdHJ1Y3RvciAnJHt2YWx1ZUNvbnN0cnVjdG9yTmFtZX0nXG4tLS0gcHJvcGVydHkgJyR7a2V5fScgY2xvc2VzIHRoZSBjaXJjbGVgKTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtZnVuY3Rpb24tdHlwZVxuZnVuY3Rpb24gaGFuZGxlRnVuY3Rpb24odmFsdWU6IEZ1bmN0aW9uLCBmdW5jdGlvblRleHRzOiBzdHJpbmdbXSwgZnVsbE9wdGlvbnM6IFRvSnNvbk9wdGlvbnMpOiB1bmtub3duIHtcbiAgaWYgKGZ1bGxPcHRpb25zLmZ1bmN0aW9uSGFuZGxpbmdNb2RlID09PSBGdW5jdGlvbkhhbmRsaW5nTW9kZS5FeGNsdWRlKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCBpbmRleCA9IGZ1bmN0aW9uVGV4dHMubGVuZ3RoO1xuICBjb25zdCBmdW5jdGlvblRleHQgPSBmdWxsT3B0aW9ucy5mdW5jdGlvbkhhbmRsaW5nTW9kZSA9PT0gRnVuY3Rpb25IYW5kbGluZ01vZGUuRnVsbFxuICAgID8gdmFsdWUudG9TdHJpbmcoKVxuICAgIDogYGZ1bmN0aW9uICR7dmFsdWUubmFtZSB8fCAnYW5vbnltb3VzJ30oKSB7IC8qIC4uLiAqLyB9YDtcbiAgZnVuY3Rpb25UZXh0cy5wdXNoKGZ1bmN0aW9uVGV4dCk7XG4gIHJldHVybiBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuRnVuY3Rpb24sIGluZGV4KTtcbn1cblxuZnVuY3Rpb24gaGFuZGxlT2JqZWN0KFxuICB2YWx1ZTogb2JqZWN0LFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAodXNlZE9iamVjdHMuaGFzKHZhbHVlKSkge1xuICAgIHJldHVybiBoYW5kbGVDaXJjdWxhclJlZmVyZW5jZSh2YWx1ZSwga2V5LCBmdWxsT3B0aW9ucyk7XG4gIH1cblxuICB1c2VkT2JqZWN0cy5hZGQodmFsdWUpO1xuXG4gIGlmIChjYW5Vc2VUb0pTT04pIHtcbiAgICBjb25zdCB0b0pTT05SZXN1bHQgPSB0cnlIYW5kbGVUb0pTT04odmFsdWUsIGtleSwgZGVwdGgsIGZ1bGxPcHRpb25zLCBmdW5jdGlvblRleHRzLCB1c2VkT2JqZWN0cyk7XG4gICAgaWYgKHRvSlNPTlJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdG9KU09OUmVzdWx0O1xuICAgIH1cbiAgfVxuXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiBoYW5kbGVBcnJheSh2YWx1ZSwgZGVwdGgsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgfVxuXG4gIGlmIChkZXB0aCA+IGZ1bGxPcHRpb25zLm1heERlcHRoKSB7XG4gICAgcmV0dXJuIG1ha2VQbGFjZWhvbGRlcihUb2tlblN1YnN0aXR1dGlvbktleS5NYXhEZXB0aExpbWl0UmVhY2hlZCk7XG4gIH1cblxuICBpZiAodmFsdWUgaW5zdGFuY2VvZiBFcnJvciAmJiBmdWxsT3B0aW9ucy5zaG91bGRIYW5kbGVFcnJvcnMpIHtcbiAgICByZXR1cm4gZXJyb3JUb1N0cmluZyh2YWx1ZSk7XG4gIH1cblxuICByZXR1cm4gaGFuZGxlUGxhaW5PYmplY3QodmFsdWUsIGRlcHRoLCBjYW5Vc2VUb0pTT04sIGZ1bGxPcHRpb25zLCBmdW5jdGlvblRleHRzLCB1c2VkT2JqZWN0cyk7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZVBsYWluT2JqZWN0KFxuICB2YWx1ZTogb2JqZWN0LFxuICBkZXB0aDogbnVtYmVyLFxuICBjYW5Vc2VUb0pTT046IGJvb2xlYW4sXG4gIGZ1bGxPcHRpb25zOiBUb0pzb25PcHRpb25zLFxuICBmdW5jdGlvblRleHRzOiBzdHJpbmdbXSxcbiAgdXNlZE9iamVjdHM6IFdlYWtTZXQ8b2JqZWN0PlxuKTogdW5rbm93biB7XG4gIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh2YWx1ZSk7XG4gIGlmIChmdWxsT3B0aW9ucy5zaG91bGRTb3J0S2V5cykge1xuICAgIGVudHJpZXMuc29ydCgoW2tleTFdLCBba2V5Ml0pID0+IGtleTEubG9jYWxlQ29tcGFyZShrZXkyKSk7XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIGVudHJpZXMubWFwKChba2V5MiwgdmFsdWUyXSkgPT4gW1xuICAgICAga2V5MixcbiAgICAgIHRvUGxhaW5PYmplY3QodmFsdWUyLCBrZXkyLCBkZXB0aCArIDEsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKVxuICAgIF0pXG4gICk7XG59XG5cbmZ1bmN0aW9uIG1ha2VPYmplY3RUb2tlblN1YnN0aXR1dGlvbihrZXk6IFRva2VuU3Vic3RpdHV0aW9uS2V5KTogc3RyaW5nIHtcbiAgcmV0dXJuIGB7IFwiW1ske2tleX1dXVwiOiBudWxsIH1gO1xufVxuXG5mdW5jdGlvbiBtYWtlUGxhY2Vob2xkZXIoa2V5OiBUb2tlblN1YnN0aXR1dGlvbktleSwgaW5kZXg/OiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gYFtbJHtrZXl9JHtpbmRleD8udG9TdHJpbmcoKSA/PyAnJ31dXWA7XG59XG5cbmZ1bmN0aW9uIHRvUGxhaW5PYmplY3QoXG4gIHZhbHVlOiB1bmtub3duLFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgY2FuVXNlVG9KU09OOiBib29sZWFuLFxuICBmdWxsT3B0aW9uczogVG9Kc29uT3B0aW9ucyxcbiAgZnVuY3Rpb25UZXh0czogc3RyaW5nW10sXG4gIHVzZWRPYmplY3RzOiBXZWFrU2V0PG9iamVjdD5cbik6IHVua25vd24ge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiAoZGVwdGggPT09IDAgfHwgZnVsbE9wdGlvbnMuc2hvdWxkSGFuZGxlVW5kZWZpbmVkKVxuICAgICAgPyBtYWtlUGxhY2Vob2xkZXIoVG9rZW5TdWJzdGl0dXRpb25LZXkuVW5kZWZpbmVkKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIGhhbmRsZUZ1bmN0aW9uKHZhbHVlLCBmdW5jdGlvblRleHRzLCBmdWxsT3B0aW9ucyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0JyB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBoYW5kbGVPYmplY3QodmFsdWUsIGtleSwgZGVwdGgsIGNhblVzZVRvSlNPTiwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbn1cblxuZnVuY3Rpb24gdHJ5SGFuZGxlVG9KU09OKFxuICB2YWx1ZTogb2JqZWN0LFxuICBrZXk6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlcixcbiAgZnVsbE9wdGlvbnM6IFRvSnNvbk9wdGlvbnMsXG4gIGZ1bmN0aW9uVGV4dHM6IHN0cmluZ1tdLFxuICB1c2VkT2JqZWN0czogV2Vha1NldDxvYmplY3Q+XG4pOiB1bmtub3duIHtcbiAgY29uc3QgdG9KU09OID0gKHZhbHVlIGFzIFBhcnRpYWw8SlNPTlNlcmlhbGl6YWJsZT4pLnRvSlNPTjtcbiAgaWYgKHR5cGVvZiB0b0pTT04gPT09ICdmdW5jdGlvbicpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSB0b0pTT04uY2FsbCh2YWx1ZSwga2V5KTtcbiAgICAgIHJldHVybiB0b1BsYWluT2JqZWN0KG5ld1ZhbHVlLCBrZXksIGRlcHRoLCBmYWxzZSwgZnVsbE9wdGlvbnMsIGZ1bmN0aW9uVGV4dHMsIHVzZWRPYmplY3RzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZnVsbE9wdGlvbnMuc2hvdWxkQ2F0Y2hUb0pTT05FcnJvcnMpIHtcbiAgICAgICAgcmV0dXJuIG1ha2VQbGFjZWhvbGRlcihUb2tlblN1YnN0aXR1dGlvbktleS5Ub0pTT05GYWlsZWQpO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFhQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsa0JBQWtCO0FBS3BCLElBQUssdUJBQUwsa0JBQUtBLDBCQUFMO0FBSUwsRUFBQUEsc0JBQUEsYUFBVTtBQUlWLEVBQUFBLHNCQUFBLFVBQU87QUFJUCxFQUFBQSxzQkFBQSxjQUFXO0FBWkQsU0FBQUE7QUFBQSxHQUFBO0FBMEZaLE1BQU0sZ0JBQWdCO0FBcUNmLFNB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
|
package/dist/lib/esm/Path.d.mts
CHANGED
package/dist/lib/esm/Path.mjs
CHANGED
@@ -73,4 +73,4 @@ export {
|
|
73
73
|
toPosixBuffer,
|
74
74
|
toPosixPath
|
75
75
|
};
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
76
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL1BhdGgudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQ29udGFpbnMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGhhbmRsaW5nIHBhdGhzLlxuICovXG5cbmltcG9ydCBwYXRoQnJvd3NlcmlmeSBmcm9tICdwYXRoLWJyb3dzZXJpZnknO1xuXG5pbXBvcnQge1xuICBlbnN1cmVTdGFydHNXaXRoLFxuICByZXBsYWNlQWxsXG59IGZyb20gJy4vU3RyaW5nLnRzJztcblxuY29uc3QgV0lORE9XU19QT1NJWF9MSUtFX1BBVEhfUkVHX0VYUCA9IC9bYS16QS1aXTpcXC9bXjpdKiQvO1xuXG4vKipcbiAqIFByb3ZpZGVzIG1ldGhvZHMgZm9yIGhhbmRsaW5nIFBPU0lYIHBhdGhzLlxuICovXG5leHBvcnQgY29uc3QgcG9zaXggPSBwYXRoQnJvd3NlcmlmeS5wb3NpeDtcblxuLyoqXG4gKiBUaGUgUE9TSVggcGF0aCBkZWxpbWl0ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBkZWxpbWl0ZXIgPSBwb3NpeC5kZWxpbWl0ZXI7XG5cbi8qKlxuICogVGhlIFBPU0lYIHNlZ21lbnQgc2VwYXJhdG9yLlxuICovXG5leHBvcnQgY29uc3Qgc2VwID0gcGF0aEJyb3dzZXJpZnkucG9zaXguc2VwO1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGJhc2UgbmFtZSBvZiBhIGZpbGUsIG9wdGlvbmFsbHkgcmVtb3ZpbmcgdGhlIGZpbGUgZXh0ZW5zaW9uLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gZ2V0IHRoZSBiYXNlIG5hbWUgZnJvbS5cbiAqIEBwYXJhbSBleHQgLSBBbiBvcHRpb25hbCBleHRlbnNpb24gdG8gcmVtb3ZlIGZyb20gdGhlIGJhc2UgbmFtZS5cbiAqIEByZXR1cm5zIFRoZSBiYXNlIG5hbWUgb2YgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBjb25zdCBiYXNlbmFtZSA9IHBvc2l4LmJhc2VuYW1lO1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGRpcmVjdG9yeSBuYW1lIG9mIGEgcGF0aC5cbiAqXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIGdldCB0aGUgZGlyZWN0b3J5IG5hbWUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBkaXJlY3RvcnkgbmFtZSBvZiB0aGUgcGF0aC5cbiAqL1xuZXhwb3J0IGNvbnN0IGRpcm5hbWUgPSBwb3NpeC5kaXJuYW1lO1xuXG4vKipcbiAqIFJldHVybnMgdGhlIGZpbGUgZXh0ZW5zaW9uIG9mIGEgcGF0aC5cbiAqXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIGdldCB0aGUgZXh0ZW5zaW9uIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgZmlsZSBleHRlbnNpb24gb2YgdGhlIHBhdGguXG4gKi9cbmV4cG9ydCBjb25zdCBleHRuYW1lID0gcG9zaXguZXh0bmFtZTtcblxuLyoqXG4gKiBGb3JtYXRzIGEgcGF0aCBvYmplY3QgaW50byBhIHBhdGggc3RyaW5nLlxuICpcbiAqIEBwYXJhbSBwYXRoT2JqZWN0IC0gVGhlIHBhdGggb2JqZWN0IHRvIGZvcm1hdC5cbiAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgcGF0aCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBmb3JtYXQgPSBwb3NpeC5mb3JtYXQ7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBpZiBhIHBhdGggaXMgYWJzb2x1dGUuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byBjaGVjay5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgcGF0aCBpcyBhYnNvbHV0ZSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Fic29sdXRlKHBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gcG9zaXguaXNBYnNvbHV0ZShwYXRoKSB8fCBXSU5ET1dTX1BPU0lYX0xJS0VfUEFUSF9SRUdfRVhQLmV4ZWMocGF0aCk/LlswXSA9PT0gcGF0aDtcbn1cblxuLyoqXG4gKiBKb2lucyBtdWx0aXBsZSBwYXRoIHNlZ21lbnRzIGludG8gYSBzaW5nbGUgcGF0aC5cbiAqXG4gKiBAcGFyYW0gcGF0aHMgLSBUaGUgcGF0aCBzZWdtZW50cyB0byBqb2luLlxuICogQHJldHVybnMgVGhlIGpvaW5lZCBwYXRoLlxuICovXG5leHBvcnQgY29uc3Qgam9pbiA9IHBvc2l4LmpvaW47XG5cbi8qKlxuICogTm9ybWFsaXplcyBhIHBhdGgsIHJlc29sdmluZyAnLi4nIGFuZCAnLicgc2VnbWVudHMuXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byBub3JtYWxpemUuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBwYXRoLlxuICovXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplID0gcG9zaXgubm9ybWFsaXplO1xuXG4vKipcbiAqIFBhcnNlcyBhIHBhdGggc3RyaW5nIGludG8gYSBwYXRoIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHN0cmluZyB0byBwYXJzZS5cbiAqIEByZXR1cm5zIFRoZSBwYXJzZWQgcGF0aCBvYmplY3QuXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZSA9IHBvc2l4LnBhcnNlO1xuXG4vKipcbiAqIFJldHVybnMgdGhlIHJlbGF0aXZlIHBhdGggZnJvbSBvbmUgcGF0aCB0byBhbm90aGVyLlxuICpcbiAqIEBwYXJhbSBmcm9tIC0gVGhlIHN0YXJ0aW5nIHBhdGguXG4gKiBAcGFyYW0gdG8gLSBUaGUgZGVzdGluYXRpb24gcGF0aC5cbiAqIEByZXR1cm5zIFRoZSByZWxhdGl2ZSBwYXRoIGZyb20gYGZyb21gIHRvIGB0b2AuXG4gKi9cbmV4cG9ydCBjb25zdCByZWxhdGl2ZSA9IHBvc2l4LnJlbGF0aXZlO1xuXG4vKipcbiAqIEdldHMgdGhlIGRpcmVjdG9yeSBuYW1lIGZyb20gdGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAsIGNvbnZlcnRpbmcgaXQgdG8gYSBQT1NJWC1zdHlsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBpbXBvcnRNZXRhVXJsIC0gVGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAgZnJvbSB3aGljaCB0byBleHRyYWN0IHRoZSBkaXJlY3RvcnkgbmFtZS5cbiAqIEByZXR1cm5zIFRoZSBQT1NJWC1zdHlsZSBkaXJlY3RvcnkgbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERpcm5hbWUoaW1wb3J0TWV0YVVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGRpcm5hbWUoZ2V0RmlsZW5hbWUoaW1wb3J0TWV0YVVybCkpO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIGZpbGVuYW1lIGZyb20gdGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAsIGNvbnZlcnRpbmcgaXQgdG8gYSBQT1NJWC1zdHlsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBpbXBvcnRNZXRhVXJsIC0gVGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAgZnJvbSB3aGljaCB0byBleHRyYWN0IHRoZSBmaWxlbmFtZS5cbiAqIEByZXR1cm5zIFRoZSBQT1NJWC1zdHlsZSBmaWxlbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVuYW1lKGltcG9ydE1ldGFVcmw6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiByZXNvbHZlKG5ldyBVUkwoaW1wb3J0TWV0YVVybCkucGF0aG5hbWUpO1xufVxuXG4vKipcbiAqIE1ha2VzIGEgZmlsZW5hbWUgYnkgYXBwZW5kaW5nIGFuIGV4dGVuc2lvbiB0byBhIGdpdmVuIGZpbGVuYW1lLlxuICogSWYgdGhlIGV4dGVuc2lvbiBpcyBlbXB0eSwgdGhlIGZpbGVuYW1lIGlzIHJldHVybmVkIGFzIGlzLlxuICpcbiAqIEBwYXJhbSBmaWxlTmFtZSAtIFRoZSBmaWxlbmFtZSB0byBhcHBlbmQgdGhlIGV4dGVuc2lvbiB0by5cbiAqIEBwYXJhbSBleHRlbnNpb24gLSBUaGUgZXh0ZW5zaW9uIHRvIGFwcGVuZCB0byB0aGUgZmlsZW5hbWUuXG4gKiBAcmV0dXJucyBUaGUgZmlsZW5hbWUgd2l0aCB0aGUgZXh0ZW5zaW9uIGFwcGVuZGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUZpbGVOYW1lKGZpbGVOYW1lOiBzdHJpbmcsIGV4dGVuc2lvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGV4dGVuc2lvbiA/IGAke2ZpbGVOYW1lfS4ke2V4dGVuc2lvbn1gIDogZmlsZU5hbWU7XG59XG5cbi8qKlxuICogTm9ybWFsaXplcyBhIGdpdmVuIHBhdGggYnkgZW5zdXJpbmcgaXQgaXMgcmVsYXRpdmUsIGFkZGluZyBcIi4vXCIgaWYgbmVjZXNzYXJ5LlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gbm9ybWFsaXplLlxuICogQHJldHVybnMgVGhlIG5vcm1hbGl6ZWQgcGF0aCwgc3RhcnRpbmcgd2l0aCBcIi4vXCIgaWYgaXQgd2FzIHJlbGF0aXZlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplSWZSZWxhdGl2ZShwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAocGF0aC5zdGFydHNXaXRoKCcvJykgfHwgcGF0aC5pbmNsdWRlcygnOicpKSB7XG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICByZXR1cm4gZW5zdXJlU3RhcnRzV2l0aChwYXRoLCAnLi8nKTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHNlcXVlbmNlIG9mIHBhdGhzIG9yIHBhdGggc2VnbWVudHMgaW50byBhbiBhYnNvbHV0ZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBwYXRoU2VnbWVudHMgLSBUaGUgc2VxdWVuY2Ugb2YgcGF0aCBzZWdtZW50cyB0byByZXNvbHZlLlxuICogQHJldHVybnMgVGhlIHJlc29sdmVkIGFic29sdXRlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlKC4uLnBhdGhTZWdtZW50czogc3RyaW5nW10pOiBzdHJpbmcge1xuICBsZXQgcGF0aCA9IHBvc2l4LnJlc29sdmUoLi4ucGF0aFNlZ21lbnRzKTtcbiAgcGF0aCA9IHRvUG9zaXhQYXRoKHBhdGgpO1xuICBjb25zdCBtYXRjaCA9IFdJTkRPV1NfUE9TSVhfTElLRV9QQVRIX1JFR19FWFAuZXhlYyhwYXRoKTtcbiAgcmV0dXJuIG1hdGNoPy5bMF0gPz8gcGF0aDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIGJ1ZmZlciBjb250YWluaW5nIGEgcGF0aCB0byBhIFBPU0lYLXN0eWxlIGJ1ZmZlciBieSByZXBsYWNpbmcgYmFja3NsYXNoZXMgd2l0aCBmb3J3YXJkIHNsYXNoZXMuXG4gKlxuICogQHBhcmFtIGJ1ZmZlciAtIFRoZSBidWZmZXIgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIEEgbmV3IGJ1ZmZlciBjb250YWluaW5nIHRoZSBQT1NJWC1zdHlsZSBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Qb3NpeEJ1ZmZlcihidWZmZXI6IEJ1ZmZlcik6IEJ1ZmZlciB7XG4gIHJldHVybiBCdWZmZXIuZnJvbSh0b1Bvc2l4UGF0aChidWZmZXIudG9TdHJpbmcoKSkpO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgZ2l2ZW4gcGF0aCB0byBhIFBPU0lYLXN0eWxlIHBhdGggYnkgcmVwbGFjaW5nIGJhY2tzbGFzaGVzIHdpdGggZm9yd2FyZCBzbGFzaGVzLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBQT1NJWC1zdHlsZSBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Qb3NpeFBhdGgocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlcGxhY2VBbGwocGF0aCwgJ1xcXFwnLCAnLycpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQU1BLE9BQU8sb0JBQW9CO0FBRTNCO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBRVAsTUFBTSxrQ0FBa0M7QUFLakMsTUFBTSxRQUFRLGVBQWU7QUFLN0IsTUFBTSxZQUFZLE1BQU07QUFLeEIsTUFBTSxNQUFNLGVBQWUsTUFBTTtBQVNqQyxNQUFNLFdBQVcsTUFBTTtBQVF2QixNQUFNLFVBQVUsTUFBTTtBQVF0QixNQUFNLFVBQVUsTUFBTTtBQVF0QixNQUFNLFNBQVMsTUFBTTtBQVFyQixTQUFTLFdBQVcsTUFBdUI7QUFDaEQsU0FBTyxNQUFNLFdBQVcsSUFBSSxLQUFLLGdDQUFnQyxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU07QUFDdkY7QUFRTyxNQUFNLE9BQU8sTUFBTTtBQVFuQixNQUFNLFlBQVksTUFBTTtBQVF4QixNQUFNLFFBQVEsTUFBTTtBQVNwQixNQUFNLFdBQVcsTUFBTTtBQVF2QixTQUFTLFdBQVcsZUFBK0I7QUFDeEQsU0FBTyxRQUFRLFlBQVksYUFBYSxDQUFDO0FBQzNDO0FBUU8sU0FBUyxZQUFZLGVBQStCO0FBQ3pELFNBQU8sUUFBUSxJQUFJLElBQUksYUFBYSxFQUFFLFFBQVE7QUFDaEQ7QUFVTyxTQUFTLGFBQWEsVUFBa0IsV0FBMkI7QUFDeEUsU0FBTyxZQUFZLEdBQUcsUUFBUSxJQUFJLFNBQVMsS0FBSztBQUNsRDtBQVFPLFNBQVMsb0JBQW9CLE1BQXNCO0FBQ3hELE1BQUksS0FBSyxXQUFXLEdBQUcsS0FBSyxLQUFLLFNBQVMsR0FBRyxHQUFHO0FBQzlDLFdBQU87QUFBQSxFQUNUO0FBRUEsU0FBTyxpQkFBaUIsTUFBTSxJQUFJO0FBQ3BDO0FBUU8sU0FBUyxXQUFXLGNBQWdDO0FBQ3pELE1BQUksT0FBTyxNQUFNLFFBQVEsR0FBRyxZQUFZO0FBQ3hDLFNBQU8sWUFBWSxJQUFJO0FBQ3ZCLFFBQU0sUUFBUSxnQ0FBZ0MsS0FBSyxJQUFJO0FBQ3ZELFNBQU8sUUFBUSxDQUFDLEtBQUs7QUFDdkI7QUFRTyxTQUFTLGNBQWMsUUFBd0I7QUFDcEQsU0FBTyxPQUFPLEtBQUssWUFBWSxPQUFPLFNBQVMsQ0FBQyxDQUFDO0FBQ25EO0FBUU8sU0FBUyxZQUFZLE1BQXNCO0FBQ2hELFNBQU8sV0FBVyxNQUFNLE1BQU0sR0FBRztBQUNuQzsiLAogICJuYW1lcyI6IFtdCn0K
|
package/dist/lib/esm/RegExp.mjs
CHANGED
@@ -20,4 +20,4 @@ export {
|
|
20
20
|
escapeRegExp,
|
21
21
|
isValidRegExp
|
22
22
|
};
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
23
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL1JlZ0V4cC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgcmVndWxhciBleHByZXNzaW9ucy5cbiAqL1xuXG4vKipcbiAqIEVzY2FwZXMgc3BlY2lhbCBjaGFyYWN0ZXJzIGluIGEgc3RyaW5nIHRvIHNhZmVseSB1c2UgaXQgd2l0aGluIGEgcmVndWxhciBleHByZXNzaW9uLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGVzY2FwZS5cbiAqIEByZXR1cm5zIFRoZSBlc2NhcGVkIHN0cmluZyB3aXRoIHNwZWNpYWwgY2hhcmFjdGVycyBwcmVmaXhlZCB3aXRoIGEgYmFja3NsYXNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlUmVnRXhwKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgLy8gTk9URTogV2UgY2FuJ3QgdXNlIGByZXBsYWNlQWxsKClgIGZyb20gYFN0cmluZy50c2AgaGVyZSBiZWNhdXNlIGl0IGludHJvZHVjZXMgYSBjaXJjdWxhciBkZXBlbmRlbmN5LlxuICByZXR1cm4gc3RyLnJlcGxhY2VBbGwoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJyk7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgc3RyaW5nIGlzIGEgdmFsaWQgcmVndWxhciBleHByZXNzaW9uLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGNoZWNrLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBzdHJpbmcgaXMgYSB2YWxpZCByZWd1bGFyIGV4cHJlc3Npb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFJlZ0V4cChzdHI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIG5ldyBSZWdFeHAoc3RyKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBWU8sU0FBUyxhQUFhLEtBQXFCO0FBRWhELFNBQU8sSUFBSSxXQUFXLHVCQUF1QixNQUFNO0FBQ3JEO0FBUU8sU0FBUyxjQUFjLEtBQXNCO0FBQ2xELE1BQUk7QUFDRixRQUFJLE9BQU8sR0FBRztBQUNkLFdBQU87QUFBQSxFQUNULFFBQVE7QUFDTixXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
@@ -131,4 +131,4 @@ export {
|
|
131
131
|
toCommandLine,
|
132
132
|
wrapCliTask
|
133
133
|
};
|
134
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL0NsaVV0aWxzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBjbGlcbiAqIENvbnRhaW5zIHV0aWxpdHkgY2xhc3NlcyBhbmQgZnVuY3Rpb25zIGZvciBtYW5hZ2luZyB0YXNrIHJlc3VsdHMsIGluY2x1ZGluZ1xuICogc3VjY2VzcywgZXhpdCBjb2RlcywgYW5kIGNoYWluaW5nIG11bHRpcGxlIHRhc2tzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB0eXBlIHsgTWF5YmVSZXR1cm4gfSBmcm9tICcuLi9UeXBlLnRzJztcblxuaW1wb3J0IHsgZW5hYmxlTGlicmFyeURlYnVnZ2VycyB9IGZyb20gJy4uL0RlYnVnLnRzJztcbmltcG9ydCB7IHByaW50RXJyb3IgfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vRnVuY3Rpb24udHMnO1xuaW1wb3J0IHsgcmVwbGFjZUFsbCB9IGZyb20gJy4uL1N0cmluZy50cyc7XG5pbXBvcnQgeyBwcm9jZXNzIH0gZnJvbSAnLi9Ob2RlTW9kdWxlcy50cyc7XG5cbi8qKlxuICogQWJzdHJhY3QgY2xhc3MgcmVwcmVzZW50aW5nIHRoZSByZXN1bHQgb2YgYSB0YXNrLiBJbmNsdWRlcyBtZXRob2RzIGZvciBoYW5kbGluZyBzdWNjZXNzLFxuICogZXhpdCBjb2RlcywgYW5kIGNoYWluaW5nIHRhc2tzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ2xpVGFza1Jlc3VsdCB7XG4gIC8qKlxuICAgKiBDaGFpbnMgbXVsdGlwbGUgdGFza3MgdG9nZXRoZXIsIGV4ZWN1dGluZyB0aGVtIHNlcXVlbnRpYWxseSB1bnRpbCBvbmUgZmFpbHMuXG4gICAqXG4gICAqIEBwYXJhbSB0YXNrcyAtIEFuIGFycmF5IG9mIHRhc2sgZnVuY3Rpb25zIHRoYXQgcmV0dXJuIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IG9yIGB2b2lkYC5cbiAgICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBmaXJzdCBmYWlsZWQge0BsaW5rIENsaVRhc2tSZXN1bHR9IG9yIGEgc3VjY2VzcyByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFzeW5jIGNoYWluKHRhc2tzOiAoKCkgPT4gUHJvbWlzYWJsZTxNYXliZVJldHVybjxDbGlUYXNrUmVzdWx0Pj4pW10pOiBQcm9taXNlPENsaVRhc2tSZXN1bHQ+IHtcbiAgICBmb3IgKGNvbnN0IHRhc2sgb2YgdGFza3MpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHdyYXBSZXN1bHQodGFzayk7XG4gICAgICBpZiAoIXJlc3VsdC5pc1N1Y2Nlc3NmdWwoKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHRoYXQgZG9lcyBub3QgZXhpdCB0aGUgcHJvY2Vzcy5cbiAgICpcbiAgICogQHJldHVybnMgQSB7QGxpbmsgQ2xpVGFza1Jlc3VsdH0gdGhhdCBkb2VzIG5vdCBleGl0IHRoZSBwcm9jZXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBEb05vdEV4aXQoKTogQ2xpVGFza1Jlc3VsdCB7XG4gICAgcmV0dXJuIG5ldyBEb05vdEV4aXRUYXNrUmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogUmVwcmVzZW50cyBhIGZhaWx1cmUgcmVzdWx0IG9mIGEgQ0xJIHRhc2suXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBmYWlsdXJlIHJlc3VsdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgRmFpbHVyZSgpOiBDbGlUYXNrUmVzdWx0IHtcbiAgICByZXR1cm4gdGhpcy5TdWNjZXNzKGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IGJhc2VkIG9uIGFuIGV4aXQgY29kZS5cbiAgICpcbiAgICogQHBhcmFtIGV4aXRDb2RlIC0gVGhlIGV4aXQgY29kZSB0byByZXByZXNlbnQuXG4gICAqIEByZXR1cm5zIEEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHJlcHJlc2VudGluZyB0aGUgZXhpdCBjb2RlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBGcm9tRXhpdENvZGUoZXhpdENvZGU6IG51bWJlcik6IENsaVRhc2tSZXN1bHQge1xuICAgIHJldHVybiBuZXcgRXhpdENvZGVUYXNrUmVzdWx0KGV4aXRDb2RlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgQ2xpVGFza1Jlc3VsdCByZXByZXNlbnRpbmcgYSBzdWNjZXNzZnVsIHRhc2sgcmVzdWx0LlxuICAgKlxuICAgKiBAcGFyYW0gaXNTdWNjZXNzIC0gQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgdGFzayB3YXMgc3VjY2Vzc2Z1bC4gRGVmYXVsdCBpcyB0cnVlLlxuICAgKiBAcmV0dXJucyBBIENsaVRhc2tSZXN1bHQgb2JqZWN0IHJlcHJlc2VudGluZyBhIHN1Y2Nlc3NmdWwgdGFzayByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIFN1Y2Nlc3MoaXNTdWNjZXNzID0gdHJ1ZSk6IENsaVRhc2tSZXN1bHQge1xuICAgIHJldHVybiBuZXcgU3VjY2Vzc1Rhc2tSZXN1bHQoaXNTdWNjZXNzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGl0cyB0aGUgcHJvY2VzcyBiYXNlZCBvbiB0aGUgdGFzayByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZXhpdCgpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0YXNrIHdhcyBzdWNjZXNzZnVsLlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgd2FzIHN1Y2Nlc3NmdWwsIG90aGVyd2lzZSBgZmFsc2VgLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGlzU3VjY2Vzc2Z1bCgpOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSB0YXNrIHJlc3VsdCB0aGF0IGRvZXMgbm90IGV4aXQgdGhlIHByb2Nlc3MuXG4gKi9cbmNsYXNzIERvTm90RXhpdFRhc2tSZXN1bHQgZXh0ZW5kcyBDbGlUYXNrUmVzdWx0IHtcbiAgLyoqXG4gICAqIERvZXMgbm90IGV4aXQgdGhlIHByb2Nlc3MuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBub29wKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNTdWNjZXNzZnVsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHRhc2sgcmVzdWx0IGJhc2VkIG9uIGFuIGV4aXQgY29kZS5cbiAqL1xuY2xhc3MgRXhpdENvZGVUYXNrUmVzdWx0IGV4dGVuZHMgQ2xpVGFza1Jlc3VsdCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGV4aXRDb2RlOiBudW1iZXIpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4aXRzIHRoZSBwcm9jZXNzIHdpdGggdGhlIHNwZWNpZmllZCBleGl0IGNvZGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBwcm9jZXNzLmV4aXQodGhpcy5leGl0Q29kZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNTdWNjZXNzZnVsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4aXRDb2RlID09PSAwO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHRhc2sgcmVzdWx0IGJhc2VkIG9uIHN1Y2Nlc3Mgb3IgZmFpbHVyZS5cbiAqL1xuY2xhc3MgU3VjY2Vzc1Rhc2tSZXN1bHQgZXh0ZW5kcyBDbGlUYXNrUmVzdWx0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2lzU3VjY2Vzc2Z1bDogYm9vbGVhbikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvKipcbiAgICogRXhpdHMgdGhlIHByb2Nlc3MgYmFzZWQgb24gdGhlIHN1Y2Nlc3Mgb2YgdGhlIHRhc2suXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBwcm9jZXNzLmV4aXQodGhpcy5faXNTdWNjZXNzZnVsID8gMCA6IDEpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzU3VjY2Vzc2Z1bCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNTdWNjZXNzZnVsO1xuICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gYXJyYXkgb2YgY29tbWFuZC1saW5lIGFyZ3VtZW50cyBpbnRvIGEgc2luZ2xlIGNvbW1hbmQtbGluZSBzdHJpbmcuXG4gKiBIYW5kbGVzIGVzY2FwaW5nIG9mIHNwZWNpYWwgY2hhcmFjdGVycyBzdWNoIGFzIHNwYWNlcywgcXVvdGVzLCBhbmQgbmV3bGluZXMuXG4gKlxuICogQHBhcmFtIGFyZ3MgLSBUaGUgYXJyYXkgb2YgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBjb21tYW5kLWxpbmUgaW52b2NhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQ29tbWFuZExpbmUoYXJnczogc3RyaW5nW10pOiBzdHJpbmcge1xuICByZXR1cm4gYXJnc1xuICAgIC5tYXAoKGFyZykgPT4ge1xuICAgICAgaWYgKC9bXFxzXCJcXG5dLy50ZXN0KGFyZykpIHtcbiAgICAgICAgbGV0IGVzY2FwZWRBcmcgPSBhcmc7XG4gICAgICAgIGVzY2FwZWRBcmcgPSByZXBsYWNlQWxsKGVzY2FwZWRBcmcsIC9cIi9nLCAnXFxcXFwiJyk7XG4gICAgICAgIGVzY2FwZWRBcmcgPSByZXBsYWNlQWxsKGVzY2FwZWRBcmcsIC9cXG4vZywgJ1xcXFxuJyk7XG4gICAgICAgIHJldHVybiBgXCIke2VzY2FwZWRBcmd9XCJgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFyZztcbiAgICB9KVxuICAgIC5qb2luKCcgJyk7XG59XG5cbi8qKlxuICogV3JhcHMgYSBDTEkgdGFzayBmdW5jdGlvbiB0byBlbnN1cmUgaXQgcnVucyBzYWZlbHkgYW5kIGhhbmRsZXMgaXRzIHtAbGluayBDbGlUYXNrUmVzdWx0fS5cbiAqXG4gKiBAcGFyYW0gdGFza0ZuIC0gVGhlIHRhc2sgZnVuY3Rpb24gdG8gZXhlY3V0ZSwgd2hpY2ggbWF5IHJldHVybiBhIHtAbGluayBDbGlUYXNrUmVzdWx0fSBvciBgdm9pZGAuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHRhc2sgaXMgY29tcGxldGVkIGFuZCBleGl0cyB3aXRoIHRoZSBhcHByb3ByaWF0ZSBzdGF0dXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3cmFwQ2xpVGFzayh0YXNrRm46ICgpID0+IFByb21pc2FibGU8TWF5YmVSZXR1cm48Q2xpVGFza1Jlc3VsdD4+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGVuYWJsZUxpYnJhcnlEZWJ1Z2dlcnMoKTtcbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgd3JhcFJlc3VsdCh0YXNrRm4pO1xuICByZXN1bHQuZXhpdCgpO1xufVxuXG4vKipcbiAqIFNhZmVseSBleGVjdXRlcyBhIHRhc2sgZnVuY3Rpb24gYW5kIHJldHVybnMgYSB7QGxpbmsgQ2xpVGFza1Jlc3VsdH0uIElmIHRoZSB0YXNrIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvcixcbiAqIHRoZSBlcnJvciBpcyBjYXVnaHQsIGFuZCBhIGZhaWx1cmUge0BsaW5rIENsaVRhc2tSZXN1bHR9IGlzIHJldHVybmVkLlxuICpcbiAqIEBwYXJhbSB0YXNrRm4gLSBUaGUgdGFzayBmdW5jdGlvbiB0byBleGVjdXRlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHJlcHJlc2VudGluZyB0aGUgb3V0Y29tZSBvZiB0aGUgdGFzay5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gd3JhcFJlc3VsdCh0YXNrRm46ICgpID0+IFByb21pc2FibGU8TWF5YmVSZXR1cm48Q2xpVGFza1Jlc3VsdD4+KTogUHJvbWlzZTxDbGlUYXNrUmVzdWx0PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIChhd2FpdCB0YXNrRm4oKSkgYXMgQ2xpVGFza1Jlc3VsdCB8IHVuZGVmaW5lZCA/PyBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBwcmludEVycm9yKG5ldyBFcnJvcignQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHRhc2sgZXhlY3V0aW9uJywgeyBjYXVzZTogZXJyb3IgfSkpO1xuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LkZhaWx1cmUoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVVBLFNBQVMsOEJBQThCO0FBQ3ZDLFNBQVMsa0JBQWtCO0FBQzNCLFNBQVMsWUFBWTtBQUNyQixTQUFTLGtCQUFrQjtBQUMzQixTQUFTLGVBQWU7QUFNakIsTUFBZSxjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbEMsYUFBb0IsTUFBTSxPQUFpRjtBQUN6RyxlQUFXLFFBQVEsT0FBTztBQUN4QixZQUFNLFNBQVMsTUFBTSxXQUFXLElBQUk7QUFDcEMsVUFBSSxDQUFDLE9BQU8sYUFBYSxHQUFHO0FBQzFCLGVBQU87QUFBQSxNQUNUO0FBQUEsSUFDRjtBQUVBLFdBQU8sY0FBYyxRQUFRO0FBQUEsRUFDL0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLFlBQTJCO0FBQ3ZDLFdBQU8sSUFBSSxvQkFBb0I7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsVUFBeUI7QUFDckMsV0FBTyxLQUFLLFFBQVEsS0FBSztBQUFBLEVBQzNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLGFBQWEsVUFBaUM7QUFDMUQsV0FBTyxJQUFJLG1CQUFtQixRQUFRO0FBQUEsRUFDeEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsUUFBUSxZQUFZLE1BQXFCO0FBQ3JELFdBQU8sSUFBSSxrQkFBa0IsU0FBUztBQUFBLEVBQ3hDO0FBYUY7QUFLQSxNQUFNLDRCQUE0QixjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJOUIsT0FBYTtBQUMzQixTQUFLO0FBQUEsRUFDUDtBQUFBLEVBRW1CLGVBQXdCO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQ0Y7QUFLQSxNQUFNLDJCQUEyQixjQUFjO0FBQUEsRUFDdEMsWUFBNkIsVUFBa0I7QUFDcEQsVUFBTTtBQUQ0QjtBQUFBLEVBRXBDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLZ0IsT0FBYTtBQUMzQixZQUFRLEtBQUssS0FBSyxRQUFRO0FBQUEsRUFDNUI7QUFBQSxFQUVtQixlQUF3QjtBQUN6QyxXQUFPLEtBQUssYUFBYTtBQUFBLEVBQzNCO0FBQ0Y7QUFLQSxNQUFNLDBCQUEwQixjQUFjO0FBQUEsRUFDckMsWUFBNkIsZUFBd0I7QUFDMUQsVUFBTTtBQUQ0QjtBQUFBLEVBRXBDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLZ0IsT0FBYTtBQUMzQixZQUFRLEtBQUssS0FBSyxnQkFBZ0IsSUFBSSxDQUFDO0FBQUEsRUFDekM7QUFBQSxFQUVtQixlQUF3QjtBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQ0Y7QUFTTyxTQUFTLGNBQWMsTUFBd0I7QUFDcEQsU0FBTyxLQUNKLElBQUksQ0FBQyxRQUFRO0FBQ1osUUFBSSxVQUFVLEtBQUssR0FBRyxHQUFHO0FBQ3ZCLFVBQUksYUFBYTtBQUNqQixtQkFBYSxXQUFXLFlBQVksTUFBTSxLQUFLO0FBQy9DLG1CQUFhLFdBQVcsWUFBWSxPQUFPLEtBQUs7QUFDaEQsYUFBTyxJQUFJLFVBQVU7QUFBQSxJQUN2QjtBQUNBLFdBQU87QUFBQSxFQUNULENBQUMsRUFDQSxLQUFLLEdBQUc7QUFDYjtBQVFBLGVBQXNCLFlBQVksUUFBcUU7QUFDckcseUJBQXVCO0FBQ3ZCLFFBQU0sU0FBUyxNQUFNLFdBQVcsTUFBTTtBQUN0QyxTQUFPLEtBQUs7QUFDZDtBQVNBLGVBQWUsV0FBVyxRQUE4RTtBQUN0RyxNQUFJO0FBQ0YsV0FBUSxNQUFNLE9BQU8sS0FBbUMsY0FBYyxRQUFRO0FBQUEsRUFDaEYsU0FBUyxPQUFPO0FBQ2QsZUFBVyxJQUFJLE1BQU0sMkNBQTJDLEVBQUUsT0FBTyxNQUFNLENBQUMsQ0FBQztBQUNqRixXQUFPLGNBQWMsUUFBUTtBQUFBLEVBQy9CO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
134
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL0NsaVV0aWxzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIHV0aWxpdHkgY2xhc3NlcyBhbmQgZnVuY3Rpb25zIGZvciBtYW5hZ2luZyB0YXNrIHJlc3VsdHMsIGluY2x1ZGluZ1xuICogc3VjY2VzcywgZXhpdCBjb2RlcywgYW5kIGNoYWluaW5nIG11bHRpcGxlIHRhc2tzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB0eXBlIHsgTWF5YmVSZXR1cm4gfSBmcm9tICcuLi9UeXBlLnRzJztcblxuaW1wb3J0IHsgZW5hYmxlTGlicmFyeURlYnVnZ2VycyB9IGZyb20gJy4uL0RlYnVnLnRzJztcbmltcG9ydCB7IHByaW50RXJyb3IgfSBmcm9tICcuLi9FcnJvci50cyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vRnVuY3Rpb24udHMnO1xuaW1wb3J0IHsgcmVwbGFjZUFsbCB9IGZyb20gJy4uL1N0cmluZy50cyc7XG5pbXBvcnQgeyBwcm9jZXNzIH0gZnJvbSAnLi9Ob2RlTW9kdWxlcy50cyc7XG5cbi8qKlxuICogQWJzdHJhY3QgY2xhc3MgcmVwcmVzZW50aW5nIHRoZSByZXN1bHQgb2YgYSB0YXNrLiBJbmNsdWRlcyBtZXRob2RzIGZvciBoYW5kbGluZyBzdWNjZXNzLFxuICogZXhpdCBjb2RlcywgYW5kIGNoYWluaW5nIHRhc2tzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ2xpVGFza1Jlc3VsdCB7XG4gIC8qKlxuICAgKiBDaGFpbnMgbXVsdGlwbGUgdGFza3MgdG9nZXRoZXIsIGV4ZWN1dGluZyB0aGVtIHNlcXVlbnRpYWxseSB1bnRpbCBvbmUgZmFpbHMuXG4gICAqXG4gICAqIEBwYXJhbSB0YXNrcyAtIEFuIGFycmF5IG9mIHRhc2sgZnVuY3Rpb25zIHRoYXQgcmV0dXJuIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IG9yIGB2b2lkYC5cbiAgICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBmaXJzdCBmYWlsZWQge0BsaW5rIENsaVRhc2tSZXN1bHR9IG9yIGEgc3VjY2VzcyByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFzeW5jIGNoYWluKHRhc2tzOiAoKCkgPT4gUHJvbWlzYWJsZTxNYXliZVJldHVybjxDbGlUYXNrUmVzdWx0Pj4pW10pOiBQcm9taXNlPENsaVRhc2tSZXN1bHQ+IHtcbiAgICBmb3IgKGNvbnN0IHRhc2sgb2YgdGFza3MpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHdyYXBSZXN1bHQodGFzayk7XG4gICAgICBpZiAoIXJlc3VsdC5pc1N1Y2Nlc3NmdWwoKSkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHRoYXQgZG9lcyBub3QgZXhpdCB0aGUgcHJvY2Vzcy5cbiAgICpcbiAgICogQHJldHVybnMgQSB7QGxpbmsgQ2xpVGFza1Jlc3VsdH0gdGhhdCBkb2VzIG5vdCBleGl0IHRoZSBwcm9jZXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBEb05vdEV4aXQoKTogQ2xpVGFza1Jlc3VsdCB7XG4gICAgcmV0dXJuIG5ldyBEb05vdEV4aXRUYXNrUmVzdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogUmVwcmVzZW50cyBhIGZhaWx1cmUgcmVzdWx0IG9mIGEgQ0xJIHRhc2suXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBmYWlsdXJlIHJlc3VsdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgRmFpbHVyZSgpOiBDbGlUYXNrUmVzdWx0IHtcbiAgICByZXR1cm4gdGhpcy5TdWNjZXNzKGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IGJhc2VkIG9uIGFuIGV4aXQgY29kZS5cbiAgICpcbiAgICogQHBhcmFtIGV4aXRDb2RlIC0gVGhlIGV4aXQgY29kZSB0byByZXByZXNlbnQuXG4gICAqIEByZXR1cm5zIEEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHJlcHJlc2VudGluZyB0aGUgZXhpdCBjb2RlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBGcm9tRXhpdENvZGUoZXhpdENvZGU6IG51bWJlcik6IENsaVRhc2tSZXN1bHQge1xuICAgIHJldHVybiBuZXcgRXhpdENvZGVUYXNrUmVzdWx0KGV4aXRDb2RlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgQ2xpVGFza1Jlc3VsdCByZXByZXNlbnRpbmcgYSBzdWNjZXNzZnVsIHRhc2sgcmVzdWx0LlxuICAgKlxuICAgKiBAcGFyYW0gaXNTdWNjZXNzIC0gQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgdGFzayB3YXMgc3VjY2Vzc2Z1bC4gRGVmYXVsdCBpcyB0cnVlLlxuICAgKiBAcmV0dXJucyBBIENsaVRhc2tSZXN1bHQgb2JqZWN0IHJlcHJlc2VudGluZyBhIHN1Y2Nlc3NmdWwgdGFzayByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIFN1Y2Nlc3MoaXNTdWNjZXNzID0gdHJ1ZSk6IENsaVRhc2tSZXN1bHQge1xuICAgIHJldHVybiBuZXcgU3VjY2Vzc1Rhc2tSZXN1bHQoaXNTdWNjZXNzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGl0cyB0aGUgcHJvY2VzcyBiYXNlZCBvbiB0aGUgdGFzayByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZXhpdCgpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0YXNrIHdhcyBzdWNjZXNzZnVsLlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgd2FzIHN1Y2Nlc3NmdWwsIG90aGVyd2lzZSBgZmFsc2VgLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGlzU3VjY2Vzc2Z1bCgpOiBib29sZWFuO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSB0YXNrIHJlc3VsdCB0aGF0IGRvZXMgbm90IGV4aXQgdGhlIHByb2Nlc3MuXG4gKi9cbmNsYXNzIERvTm90RXhpdFRhc2tSZXN1bHQgZXh0ZW5kcyBDbGlUYXNrUmVzdWx0IHtcbiAgLyoqXG4gICAqIERvZXMgbm90IGV4aXQgdGhlIHByb2Nlc3MuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBub29wKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNTdWNjZXNzZnVsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHRhc2sgcmVzdWx0IGJhc2VkIG9uIGFuIGV4aXQgY29kZS5cbiAqL1xuY2xhc3MgRXhpdENvZGVUYXNrUmVzdWx0IGV4dGVuZHMgQ2xpVGFza1Jlc3VsdCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGV4aXRDb2RlOiBudW1iZXIpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4aXRzIHRoZSBwcm9jZXNzIHdpdGggdGhlIHNwZWNpZmllZCBleGl0IGNvZGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBwcm9jZXNzLmV4aXQodGhpcy5leGl0Q29kZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgaXNTdWNjZXNzZnVsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4aXRDb2RlID09PSAwO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHRhc2sgcmVzdWx0IGJhc2VkIG9uIHN1Y2Nlc3Mgb3IgZmFpbHVyZS5cbiAqL1xuY2xhc3MgU3VjY2Vzc1Rhc2tSZXN1bHQgZXh0ZW5kcyBDbGlUYXNrUmVzdWx0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX2lzU3VjY2Vzc2Z1bDogYm9vbGVhbikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvKipcbiAgICogRXhpdHMgdGhlIHByb2Nlc3MgYmFzZWQgb24gdGhlIHN1Y2Nlc3Mgb2YgdGhlIHRhc2suXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZXhpdCgpOiB2b2lkIHtcbiAgICBwcm9jZXNzLmV4aXQodGhpcy5faXNTdWNjZXNzZnVsID8gMCA6IDEpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGlzU3VjY2Vzc2Z1bCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNTdWNjZXNzZnVsO1xuICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gYXJyYXkgb2YgY29tbWFuZC1saW5lIGFyZ3VtZW50cyBpbnRvIGEgc2luZ2xlIGNvbW1hbmQtbGluZSBzdHJpbmcuXG4gKiBIYW5kbGVzIGVzY2FwaW5nIG9mIHNwZWNpYWwgY2hhcmFjdGVycyBzdWNoIGFzIHNwYWNlcywgcXVvdGVzLCBhbmQgbmV3bGluZXMuXG4gKlxuICogQHBhcmFtIGFyZ3MgLSBUaGUgYXJyYXkgb2YgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBjb252ZXJ0LlxuICogQHJldHVybnMgQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBjb21tYW5kLWxpbmUgaW52b2NhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQ29tbWFuZExpbmUoYXJnczogc3RyaW5nW10pOiBzdHJpbmcge1xuICByZXR1cm4gYXJnc1xuICAgIC5tYXAoKGFyZykgPT4ge1xuICAgICAgaWYgKC9bXFxzXCJcXG5dLy50ZXN0KGFyZykpIHtcbiAgICAgICAgbGV0IGVzY2FwZWRBcmcgPSBhcmc7XG4gICAgICAgIGVzY2FwZWRBcmcgPSByZXBsYWNlQWxsKGVzY2FwZWRBcmcsIC9cIi9nLCAnXFxcXFwiJyk7XG4gICAgICAgIGVzY2FwZWRBcmcgPSByZXBsYWNlQWxsKGVzY2FwZWRBcmcsIC9cXG4vZywgJ1xcXFxuJyk7XG4gICAgICAgIHJldHVybiBgXCIke2VzY2FwZWRBcmd9XCJgO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGFyZztcbiAgICB9KVxuICAgIC5qb2luKCcgJyk7XG59XG5cbi8qKlxuICogV3JhcHMgYSBDTEkgdGFzayBmdW5jdGlvbiB0byBlbnN1cmUgaXQgcnVucyBzYWZlbHkgYW5kIGhhbmRsZXMgaXRzIHtAbGluayBDbGlUYXNrUmVzdWx0fS5cbiAqXG4gKiBAcGFyYW0gdGFza0ZuIC0gVGhlIHRhc2sgZnVuY3Rpb24gdG8gZXhlY3V0ZSwgd2hpY2ggbWF5IHJldHVybiBhIHtAbGluayBDbGlUYXNrUmVzdWx0fSBvciBgdm9pZGAuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHRhc2sgaXMgY29tcGxldGVkIGFuZCBleGl0cyB3aXRoIHRoZSBhcHByb3ByaWF0ZSBzdGF0dXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3cmFwQ2xpVGFzayh0YXNrRm46ICgpID0+IFByb21pc2FibGU8TWF5YmVSZXR1cm48Q2xpVGFza1Jlc3VsdD4+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGVuYWJsZUxpYnJhcnlEZWJ1Z2dlcnMoKTtcbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgd3JhcFJlc3VsdCh0YXNrRm4pO1xuICByZXN1bHQuZXhpdCgpO1xufVxuXG4vKipcbiAqIFNhZmVseSBleGVjdXRlcyBhIHRhc2sgZnVuY3Rpb24gYW5kIHJldHVybnMgYSB7QGxpbmsgQ2xpVGFza1Jlc3VsdH0uIElmIHRoZSB0YXNrIGZ1bmN0aW9uIHRocm93cyBhbiBlcnJvcixcbiAqIHRoZSBlcnJvciBpcyBjYXVnaHQsIGFuZCBhIGZhaWx1cmUge0BsaW5rIENsaVRhc2tSZXN1bHR9IGlzIHJldHVybmVkLlxuICpcbiAqIEBwYXJhbSB0YXNrRm4gLSBUaGUgdGFzayBmdW5jdGlvbiB0byBleGVjdXRlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIGEge0BsaW5rIENsaVRhc2tSZXN1bHR9IHJlcHJlc2VudGluZyB0aGUgb3V0Y29tZSBvZiB0aGUgdGFzay5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gd3JhcFJlc3VsdCh0YXNrRm46ICgpID0+IFByb21pc2FibGU8TWF5YmVSZXR1cm48Q2xpVGFza1Jlc3VsdD4+KTogUHJvbWlzZTxDbGlUYXNrUmVzdWx0PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIChhd2FpdCB0YXNrRm4oKSkgYXMgQ2xpVGFza1Jlc3VsdCB8IHVuZGVmaW5lZCA/PyBDbGlUYXNrUmVzdWx0LlN1Y2Nlc3MoKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBwcmludEVycm9yKG5ldyBFcnJvcignQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHRhc2sgZXhlY3V0aW9uJywgeyBjYXVzZTogZXJyb3IgfSkpO1xuICAgIHJldHVybiBDbGlUYXNrUmVzdWx0LkZhaWx1cmUoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVdBLFNBQVMsOEJBQThCO0FBQ3ZDLFNBQVMsa0JBQWtCO0FBQzNCLFNBQVMsWUFBWTtBQUNyQixTQUFTLGtCQUFrQjtBQUMzQixTQUFTLGVBQWU7QUFNakIsTUFBZSxjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbEMsYUFBb0IsTUFBTSxPQUFpRjtBQUN6RyxlQUFXLFFBQVEsT0FBTztBQUN4QixZQUFNLFNBQVMsTUFBTSxXQUFXLElBQUk7QUFDcEMsVUFBSSxDQUFDLE9BQU8sYUFBYSxHQUFHO0FBQzFCLGVBQU87QUFBQSxNQUNUO0FBQUEsSUFDRjtBQUVBLFdBQU8sY0FBYyxRQUFRO0FBQUEsRUFDL0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLFlBQTJCO0FBQ3ZDLFdBQU8sSUFBSSxvQkFBb0I7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsVUFBeUI7QUFDckMsV0FBTyxLQUFLLFFBQVEsS0FBSztBQUFBLEVBQzNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLGFBQWEsVUFBaUM7QUFDMUQsV0FBTyxJQUFJLG1CQUFtQixRQUFRO0FBQUEsRUFDeEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsUUFBUSxZQUFZLE1BQXFCO0FBQ3JELFdBQU8sSUFBSSxrQkFBa0IsU0FBUztBQUFBLEVBQ3hDO0FBYUY7QUFLQSxNQUFNLDRCQUE0QixjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJOUIsT0FBYTtBQUMzQixTQUFLO0FBQUEsRUFDUDtBQUFBLEVBRW1CLGVBQXdCO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQ0Y7QUFLQSxNQUFNLDJCQUEyQixjQUFjO0FBQUEsRUFDdEMsWUFBNkIsVUFBa0I7QUFDcEQsVUFBTTtBQUQ0QjtBQUFBLEVBRXBDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLZ0IsT0FBYTtBQUMzQixZQUFRLEtBQUssS0FBSyxRQUFRO0FBQUEsRUFDNUI7QUFBQSxFQUVtQixlQUF3QjtBQUN6QyxXQUFPLEtBQUssYUFBYTtBQUFBLEVBQzNCO0FBQ0Y7QUFLQSxNQUFNLDBCQUEwQixjQUFjO0FBQUEsRUFDckMsWUFBNkIsZUFBd0I7QUFDMUQsVUFBTTtBQUQ0QjtBQUFBLEVBRXBDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLZ0IsT0FBYTtBQUMzQixZQUFRLEtBQUssS0FBSyxnQkFBZ0IsSUFBSSxDQUFDO0FBQUEsRUFDekM7QUFBQSxFQUVtQixlQUF3QjtBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQ0Y7QUFTTyxTQUFTLGNBQWMsTUFBd0I7QUFDcEQsU0FBTyxLQUNKLElBQUksQ0FBQyxRQUFRO0FBQ1osUUFBSSxVQUFVLEtBQUssR0FBRyxHQUFHO0FBQ3ZCLFVBQUksYUFBYTtBQUNqQixtQkFBYSxXQUFXLFlBQVksTUFBTSxLQUFLO0FBQy9DLG1CQUFhLFdBQVcsWUFBWSxPQUFPLEtBQUs7QUFDaEQsYUFBTyxJQUFJLFVBQVU7QUFBQSxJQUN2QjtBQUNBLFdBQU87QUFBQSxFQUNULENBQUMsRUFDQSxLQUFLLEdBQUc7QUFDYjtBQVFBLGVBQXNCLFlBQVksUUFBcUU7QUFDckcseUJBQXVCO0FBQ3ZCLFFBQU0sU0FBUyxNQUFNLFdBQVcsTUFBTTtBQUN0QyxTQUFPLEtBQUs7QUFDZDtBQVNBLGVBQWUsV0FBVyxRQUE4RTtBQUN0RyxNQUFJO0FBQ0YsV0FBUSxNQUFNLE9BQU8sS0FBbUMsY0FBYyxRQUFRO0FBQUEsRUFDaEYsU0FBUyxPQUFPO0FBQ2QsZUFBVyxJQUFJLE1BQU0sMkNBQTJDLEVBQUUsT0FBTyxNQUFNLENBQUMsQ0FBQztBQUNqRixXQUFPLGNBQWMsUUFBUTtBQUFBLEVBQy9CO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
@@ -16,4 +16,4 @@ async function generate(path, lines) {
|
|
16
16
|
export {
|
17
17
|
generate
|
18
18
|
};
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
19
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL0NvZGVHZW5lcmF0b3IudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQ29udGFpbnMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGNvZGUgZ2VuZXJhdGlvbi5cbiAqL1xuXG5pbXBvcnQgeyB3cml0ZUZpbGUgfSBmcm9tICcuL05vZGVNb2R1bGVzLnRzJztcblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBmaWxlIGF0IHRoZSBzcGVjaWZpZWQgcGF0aCB3aXRoIHRoZSBwcm92aWRlZCBsaW5lcyBvZiBjb2RlLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggd2hlcmUgdGhlIGZpbGUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gKiBAcGFyYW0gbGluZXMgLSBBbiBhcnJheSBvZiBzdHJpbmdzIHJlcHJlc2VudGluZyB0aGUgbGluZXMgb2YgY29kZSB0byBiZSB3cml0dGVuIGluIHRoZSBmaWxlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBmaWxlIGdlbmVyYXRpb24gaXMgY29tcGxldGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZShwYXRoOiBzdHJpbmcsIGxpbmVzOiBzdHJpbmdbXSk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAobGluZXMuYXQoLTEpKSB7XG4gICAgbGluZXMucHVzaCgnJyk7XG4gIH1cbiAgbGluZXMudW5zaGlmdCgnLyogVEhJUyBJUyBBIEdFTkVSQVRFRC9CVU5ETEVEIEZJTEUgQlkgQlVJTEQgU0NSSVBUICovJywgJycpO1xuICBhd2FpdCB3cml0ZUZpbGUocGF0aCwgbGluZXMuam9pbignXFxuJyksICd1dGYtOCcpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQU1BLFNBQVMsaUJBQWlCO0FBUzFCLGVBQXNCLFNBQVMsTUFBYyxPQUFnQztBQUMzRSxNQUFJLE1BQU0sR0FBRyxFQUFFLEdBQUc7QUFDaEIsVUFBTSxLQUFLLEVBQUU7QUFBQSxFQUNmO0FBQ0EsUUFBTSxRQUFRLDBEQUEwRCxFQUFFO0FBQzFFLFFBQU0sVUFBVSxNQUFNLE1BQU0sS0FBSyxJQUFJLEdBQUcsT0FBTztBQUNqRDsiLAogICJuYW1lcyI6IFtdCn0K
|
@@ -45,4 +45,4 @@ async function lint(shouldFix) {
|
|
45
45
|
export {
|
46
46
|
lint
|
47
47
|
};
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
48
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL0VTTGludC9FU0xpbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogTGludGluZyB1dGlsaXR5IGZvciBFU0xpbnQgY29uZmlndXJhdGlvbiB3aXRoIHN1cHBvcnQgZm9yIGF1dG9tYXRpYyBmaXhpbmcuXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSBmdW5jdGlvbiB0byBsaW50IGZpbGVzIGJhc2VkIG9uIHRoZSBFU0xpbnQgY29uZmlndXJhdGlvbiBkZWZpbmVkIGluIGBlc2xpbnQuY29uZmlnLnRzYC5cbiAqIEl0IGNhbiBhdXRvbWF0aWNhbGx5IGZpeCBsaW50aW5nIGlzc3VlcyBpZiBzcGVjaWZpZWQsIGFuZCBsb2dzIHJlc3VsdHMgdG8gdGhlIGNvbnNvbGUuXG4gKi9cblxuaW1wb3J0IHsgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMgfSBmcm9tICcuLi8uLi9vYnNpZGlhbi9QbHVnaW4vT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMudHMnO1xuaW1wb3J0IHtcbiAgZ2V0RGlybmFtZSxcbiAgam9pblxufSBmcm9tICcuLi8uLi9QYXRoLnRzJztcbmltcG9ydCB7XG4gIGNwLFxuICBleGlzdHNTeW5jXG59IGZyb20gJy4uL05vZGVNb2R1bGVzLnRzJztcbmltcG9ydCB7XG4gIGV4ZWNGcm9tUm9vdCxcbiAgZ2V0Um9vdERpcixcbiAgcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmVcbn0gZnJvbSAnLi4vUm9vdC50cyc7XG5cbi8qKlxuICogTGludCB0aGUgcHJvamVjdCB3aXRoIEVTTGludC5cbiAqXG4gKiBAcGFyYW0gc2hvdWxkRml4IC0gV2hldGhlciB0byBmaXggbGludGluZyBpc3N1ZXMgYXV0b21hdGljYWxseS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxpbnQoc2hvdWxkRml4PzogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBjb25maWdGaWxlcyA9IFtcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Fc2xpbnRDb25maWdKcyxcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Fc2xpbnRDb25maWdNanMsXG4gICAgT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRXNsaW50Q29uZmlnQ2pzLFxuICAgIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkVzbGludENvbmZpZ1RzLFxuICAgIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkVzbGludENvbmZpZ010cyxcbiAgICBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Fc2xpbnRDb25maWdDdHNcbiAgXTtcblxuICBjb25zdCBjb25maWdGaWxlRXhpc3QgPSBjb25maWdGaWxlcy5zb21lKChjb25maWdGaWxlKSA9PiB7XG4gICAgY29uc3QgY29uZmlnRmlsZVBhdGggPSByZXNvbHZlUGF0aEZyb21Sb290U2FmZShjb25maWdGaWxlKTtcbiAgICByZXR1cm4gZXhpc3RzU3luYyhjb25maWdGaWxlUGF0aCk7XG4gIH0pO1xuXG4gIGlmICghY29uZmlnRmlsZUV4aXN0KSB7XG4gICAgY29uc29sZS53YXJuKCdFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlIG5vdCBmb3VuZC4gQ3JlYXRpbmcgZGVmYXVsdCBjb25maWcuLi4nKTtcbiAgICBjb25zdCBwYWNrYWdlRGlyID0gZ2V0Um9vdERpcihnZXREaXJuYW1lKGltcG9ydC5tZXRhLnVybCkpO1xuICAgIGlmICghcGFja2FnZURpcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQYWNrYWdlIGRpcmVjdG9yeSBub3QgZm91bmQnKTtcbiAgICB9XG4gICAgYXdhaXQgY3Aoam9pbihwYWNrYWdlRGlyLCBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Fc2xpbnRDb25maWdNdHMpLCByZXNvbHZlUGF0aEZyb21Sb290U2FmZShPYnNpZGlhblBsdWdpblJlcG9QYXRocy5Fc2xpbnRDb25maWdNdHMpKTtcbiAgfVxuXG4gIGF3YWl0IGV4ZWNGcm9tUm9vdChbJ25weCcsICdlc2xpbnQnLCAuLi4oc2hvdWxkRml4ID8gWyctLWZpeCddIDogW10pLCBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5DdXJyZW50RGlyXSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBU0EsU0FBUywrQkFBK0I7QUFDeEM7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQU9QLGVBQXNCLEtBQUssV0FBb0M7QUFDN0QsUUFBTSxjQUFjO0FBQUEsSUFDbEIsd0JBQXdCO0FBQUEsSUFDeEIsd0JBQXdCO0FBQUEsSUFDeEIsd0JBQXdCO0FBQUEsSUFDeEIsd0JBQXdCO0FBQUEsSUFDeEIsd0JBQXdCO0FBQUEsSUFDeEIsd0JBQXdCO0FBQUEsRUFDMUI7QUFFQSxRQUFNLGtCQUFrQixZQUFZLEtBQUssQ0FBQyxlQUFlO0FBQ3ZELFVBQU0saUJBQWlCLHdCQUF3QixVQUFVO0FBQ3pELFdBQU8sV0FBVyxjQUFjO0FBQUEsRUFDbEMsQ0FBQztBQUVELE1BQUksQ0FBQyxpQkFBaUI7QUFDcEIsWUFBUSxLQUFLLGlFQUFpRTtBQUM5RSxVQUFNLGFBQWEsV0FBVyxXQUFXLFlBQVksR0FBRyxDQUFDO0FBQ3pELFFBQUksQ0FBQyxZQUFZO0FBQ2YsWUFBTSxJQUFJLE1BQU0sNkJBQTZCO0FBQUEsSUFDL0M7QUFDQSxVQUFNLEdBQUcsS0FBSyxZQUFZLHdCQUF3QixlQUFlLEdBQUcsd0JBQXdCLHdCQUF3QixlQUFlLENBQUM7QUFBQSxFQUN0STtBQUVBLFFBQU0sYUFBYSxDQUFDLE9BQU8sVUFBVSxHQUFJLFlBQVksQ0FBQyxPQUFPLElBQUksQ0FBQyxHQUFJLHdCQUF3QixVQUFVLENBQUM7QUFDM0c7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
@@ -1,13 +1,12 @@
|
|
1
1
|
/**
|
2
|
-
* @packageDocumentation
|
2
|
+
* @packageDocumentation
|
3
|
+
*
|
3
4
|
* ESLint configuration for TypeScript projects with various plugins.
|
4
5
|
*
|
5
6
|
* This module exports ESLint configurations for TypeScript projects, integrating multiple ESLint plugins
|
6
7
|
* such as `@typescript-eslint/parser`, `@typescript-eslint/eslint-plugin`,
|
7
8
|
* `eslint-plugin-modules-newlines`, `@stylistic/eslint-plugin`.
|
8
9
|
* It sets up parsers, plugins, and rules for maintaining code quality and consistency.
|
9
|
-
*
|
10
|
-
* @packageDocumentation eslint-config
|
11
10
|
*/
|
12
11
|
import type { Linter } from 'eslint';
|
13
12
|
/**
|