obsidian-dev-utils 36.0.0 → 36.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/dist/lib/cjs/AbortController.cjs +1 -1
- package/dist/lib/cjs/Array.cjs +1 -1
- package/dist/lib/cjs/Async.cjs +2 -2
- package/dist/lib/cjs/Async.d.cts +4 -4
- package/dist/lib/cjs/AsyncEvents.cjs +2 -2
- package/dist/lib/cjs/AsyncEvents.d.cts +4 -4
- package/dist/lib/cjs/Blob.cjs +1 -1
- package/dist/lib/cjs/CssClass.cjs +2 -2
- package/dist/lib/cjs/CssClass.d.cts +35 -35
- package/dist/lib/cjs/Debug.cjs +2 -2
- package/dist/lib/cjs/DebugController.cjs +1 -1
- package/dist/lib/cjs/Enum.cjs +1 -1
- package/dist/lib/cjs/Error.cjs +2 -2
- package/dist/lib/cjs/Error.d.cts +1 -1
- package/dist/lib/cjs/Function.cjs +1 -1
- package/dist/lib/cjs/HTMLElement.cjs +2 -2
- package/dist/lib/cjs/HTMLElement.d.cts +1 -1
- package/dist/lib/cjs/Library.cjs +3 -3
- package/dist/lib/cjs/Library.d.cts +3 -3
- package/dist/lib/cjs/ObjectUtils.cjs +2 -2
- package/dist/lib/cjs/ObjectUtils.d.cts +1 -1
- package/dist/lib/cjs/Path.cjs +2 -2
- package/dist/lib/cjs/Path.d.cts +2 -2
- package/dist/lib/cjs/RegExp.cjs +2 -2
- package/dist/lib/cjs/RegExp.d.cts +3 -3
- package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +3 -3
- package/dist/lib/cjs/ScriptUtils/CliUtils.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/ESLint/index.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Exec.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/Exec.d.cts +9 -9
- package/dist/lib/cjs/ScriptUtils/Fs.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/JSON.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/JSON.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/Npm.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/Npm.d.cts +5 -5
- package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/Root.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/build.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/cli.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +4 -4
- package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/index.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +12 -6
- package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.d.cts +0 -3
- package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/format.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/index.cjs +1 -1
- package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/spellcheck.d.cts +1 -1
- package/dist/lib/cjs/ScriptUtils/version.cjs +2 -2
- package/dist/lib/cjs/ScriptUtils/version.d.cts +3 -8
- package/dist/lib/cjs/String.cjs +2 -2
- package/dist/lib/cjs/String.d.cts +5 -5
- package/dist/lib/cjs/Transformers/DateTransformer.cjs +3 -3
- package/dist/lib/cjs/Transformers/DateTransformer.d.cts +1 -1
- package/dist/lib/cjs/Transformers/DurationTransformer.cjs +4 -4
- package/dist/lib/cjs/Transformers/DurationTransformer.d.cts +2 -2
- package/dist/lib/cjs/Transformers/GroupTransformer.cjs +4 -4
- package/dist/lib/cjs/Transformers/GroupTransformer.d.cts +2 -2
- package/dist/lib/cjs/Transformers/MapTransformer.cjs +3 -3
- package/dist/lib/cjs/Transformers/MapTransformer.d.cts +1 -1
- package/dist/lib/cjs/Transformers/SetTransformer.cjs +3 -3
- package/dist/lib/cjs/Transformers/SetTransformer.d.cts +1 -1
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +3 -3
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.d.cts +1 -1
- package/dist/lib/cjs/Transformers/Transformer.cjs +2 -2
- package/dist/lib/cjs/Transformers/Transformer.d.cts +1 -1
- package/dist/lib/cjs/Transformers/TwoWayMapTransformer.cjs +1 -1
- package/dist/lib/cjs/Transformers/TypedTransformer.cjs +1 -1
- package/dist/lib/cjs/Transformers/index.cjs +1 -1
- package/dist/lib/cjs/TwoWayMap.cjs +1 -1
- package/dist/lib/cjs/Type.cjs +2 -2
- package/dist/lib/cjs/Type.d.cts +1 -1
- package/dist/lib/cjs/ValueProvider.cjs +2 -2
- package/dist/lib/cjs/ValueProvider.d.cts +1 -1
- package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +2 -2
- package/dist/lib/cjs/codemirror/StateFieldSpec.d.cts +2 -2
- package/dist/lib/cjs/codemirror/index.cjs +1 -1
- package/dist/lib/cjs/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/App.cjs +1 -1
- package/dist/lib/cjs/obsidian/AttachmentPath.cjs +1 -1
- package/dist/lib/cjs/obsidian/Backlink.cjs +2 -2
- package/dist/lib/cjs/obsidian/Backlink.d.cts +7 -7
- package/dist/lib/cjs/obsidian/Callout.cjs +2 -2
- package/dist/lib/cjs/obsidian/Callout.d.cts +6 -6
- package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.cjs +2 -2
- package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.d.cts +9 -9
- package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.cjs +3 -3
- package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/DateComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/DateTimeComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/EmailComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/FileComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.cjs +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleEmailComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleFileComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +3 -3
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/NumberComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/PasswordComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/SettingComponentWrapper.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TelephoneComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TextBasedComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedRangeTextComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.cjs +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/UrlComponent.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.cjs +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.cjs +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.d.cts +3 -3
- package/dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/Dataview.cjs +3 -4
- package/dist/lib/cjs/obsidian/Dataview.d.cts +20 -20
- package/dist/lib/cjs/obsidian/DataviewLink.cjs +1 -1
- package/dist/lib/cjs/obsidian/FileChange.cjs +2 -2
- package/dist/lib/cjs/obsidian/FileChange.d.cts +4 -4
- package/dist/lib/cjs/obsidian/FileManager.cjs +1 -1
- package/dist/lib/cjs/obsidian/FileSystem.cjs +2 -2
- package/dist/lib/cjs/obsidian/FileSystem.d.cts +6 -6
- package/dist/lib/cjs/obsidian/Frontmatter.cjs +2 -2
- package/dist/lib/cjs/obsidian/Frontmatter.d.cts +7 -7
- package/dist/lib/cjs/obsidian/FrontmatterLinkCacheWithOffsets.cjs +2 -2
- package/dist/lib/cjs/obsidian/FrontmatterLinkCacheWithOffsets.d.cts +2 -2
- package/dist/lib/cjs/obsidian/Link.cjs +2 -2
- package/dist/lib/cjs/obsidian/Link.d.cts +50 -49
- package/dist/lib/cjs/obsidian/Logger.cjs +2 -2
- package/dist/lib/cjs/obsidian/Loop.cjs +2 -2
- package/dist/lib/cjs/obsidian/Loop.d.cts +13 -7
- package/dist/lib/cjs/obsidian/Markdown.cjs +1 -1
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +20 -9
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.d.cts +30 -17
- package/dist/lib/cjs/obsidian/MarkdownView.cjs +1 -1
- package/dist/lib/cjs/obsidian/MetadataCache.cjs +4 -16
- package/dist/lib/cjs/obsidian/Modals/Alert.cjs +2 -2
- package/dist/lib/cjs/obsidian/Modals/Alert.d.cts +6 -6
- package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +2 -2
- package/dist/lib/cjs/obsidian/Modals/Confirm.d.cts +7 -7
- package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +2 -2
- package/dist/lib/cjs/obsidian/Modals/ModalBase.d.cts +3 -3
- package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +2 -2
- package/dist/lib/cjs/obsidian/Modals/Prompt.d.cts +7 -7
- package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +2 -2
- package/dist/lib/cjs/obsidian/Modals/SelectItem.d.cts +7 -7
- package/dist/lib/cjs/obsidian/Modals/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/MonkeyAround.cjs +2 -2
- package/dist/lib/cjs/obsidian/MonkeyAround.d.cts +3 -3
- package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +1 -1
- package/dist/lib/cjs/obsidian/Pdf.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +2 -2
- package/dist/lib/cjs/obsidian/Plugin/PluginId.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +1 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +3 -3
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +6 -6
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.cjs +2 -2
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.d.cts +4 -4
- package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.cjs +2 -2
- package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.d.cts +6 -6
- package/dist/lib/cjs/obsidian/Plugin/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/Queue.cjs +1 -1
- package/dist/lib/cjs/obsidian/React/AppContext.cjs +2 -2
- package/dist/lib/cjs/obsidian/React/AppContext.d.cts +2 -2
- package/dist/lib/cjs/obsidian/React/index.cjs +1 -1
- package/dist/lib/cjs/obsidian/Reference.cjs +2 -2
- package/dist/lib/cjs/obsidian/Reference.d.cts +8 -8
- package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +2 -2
- package/dist/lib/cjs/obsidian/RenameDeleteHandler.d.cts +2 -2
- package/dist/lib/cjs/obsidian/ResourceUrl.cjs +1 -1
- package/dist/lib/cjs/obsidian/SettingEx.cjs +1 -1
- package/dist/lib/cjs/obsidian/Validation.cjs +2 -2
- package/dist/lib/cjs/obsidian/Validation.d.cts +1 -1
- package/dist/lib/cjs/obsidian/Vault.cjs +18 -4
- package/dist/lib/cjs/obsidian/Vault.d.cts +9 -1
- package/dist/lib/cjs/obsidian/VaultEx.cjs +1 -1
- package/dist/lib/cjs/obsidian/index.cjs +1 -1
- package/dist/lib/cjs/url.cjs +1 -1
- package/dist/lib/esm/AbortController.mjs +1 -1
- package/dist/lib/esm/Array.mjs +1 -1
- package/dist/lib/esm/Async.d.mts +4 -4
- package/dist/lib/esm/Async.mjs +2 -2
- package/dist/lib/esm/AsyncEvents.d.mts +4 -4
- package/dist/lib/esm/AsyncEvents.mjs +2 -2
- package/dist/lib/esm/Blob.mjs +1 -1
- package/dist/lib/esm/CssClass.d.mts +35 -35
- package/dist/lib/esm/CssClass.mjs +2 -2
- package/dist/lib/esm/Debug.mjs +2 -2
- package/dist/lib/esm/DebugController.mjs +1 -1
- package/dist/lib/esm/Enum.mjs +1 -1
- package/dist/lib/esm/Error.d.mts +1 -1
- package/dist/lib/esm/Error.mjs +2 -2
- package/dist/lib/esm/Function.mjs +1 -1
- package/dist/lib/esm/HTMLElement.d.mts +1 -1
- package/dist/lib/esm/HTMLElement.mjs +2 -2
- package/dist/lib/esm/Library.d.mts +3 -3
- package/dist/lib/esm/Library.mjs +3 -3
- package/dist/lib/esm/ObjectUtils.d.mts +1 -1
- package/dist/lib/esm/ObjectUtils.mjs +2 -2
- package/dist/lib/esm/Path.d.mts +2 -2
- package/dist/lib/esm/Path.mjs +2 -2
- package/dist/lib/esm/RegExp.d.mts +3 -3
- package/dist/lib/esm/RegExp.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/CliUtils.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/CliUtils.mjs +3 -3
- package/dist/lib/esm/ScriptUtils/CodeGenerator.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/ESLint/index.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/Exec.d.mts +9 -9
- package/dist/lib/esm/ScriptUtils/Exec.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/Fs.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/JSON.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/JSON.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/NodeModules.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/Npm.d.mts +5 -5
- package/dist/lib/esm/ScriptUtils/Npm.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/NpmPublish.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/NpmRun.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/Root.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/build.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/cli.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +4 -4
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/esbuild/index.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.d.mts +0 -3
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +12 -6
- package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/format.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/index.mjs +1 -1
- package/dist/lib/esm/ScriptUtils/spellcheck.d.mts +1 -1
- package/dist/lib/esm/ScriptUtils/spellcheck.mjs +2 -2
- package/dist/lib/esm/ScriptUtils/version.d.mts +3 -8
- package/dist/lib/esm/ScriptUtils/version.mjs +2 -2
- package/dist/lib/esm/String.d.mts +5 -5
- package/dist/lib/esm/String.mjs +2 -2
- package/dist/lib/esm/Transformers/DateTransformer.d.mts +1 -1
- package/dist/lib/esm/Transformers/DateTransformer.mjs +3 -3
- package/dist/lib/esm/Transformers/DurationTransformer.d.mts +2 -2
- package/dist/lib/esm/Transformers/DurationTransformer.mjs +4 -4
- package/dist/lib/esm/Transformers/GroupTransformer.d.mts +2 -2
- package/dist/lib/esm/Transformers/GroupTransformer.mjs +4 -4
- package/dist/lib/esm/Transformers/MapTransformer.d.mts +1 -1
- package/dist/lib/esm/Transformers/MapTransformer.mjs +3 -3
- package/dist/lib/esm/Transformers/SetTransformer.d.mts +1 -1
- package/dist/lib/esm/Transformers/SetTransformer.mjs +3 -3
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.d.mts +1 -1
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.mjs +3 -3
- package/dist/lib/esm/Transformers/Transformer.d.mts +1 -1
- package/dist/lib/esm/Transformers/Transformer.mjs +2 -2
- package/dist/lib/esm/Transformers/TwoWayMapTransformer.mjs +1 -1
- package/dist/lib/esm/Transformers/TypedTransformer.mjs +1 -1
- package/dist/lib/esm/Transformers/index.mjs +1 -1
- package/dist/lib/esm/TwoWayMap.mjs +1 -1
- package/dist/lib/esm/Type.d.mts +1 -1
- package/dist/lib/esm/Type.mjs +2 -2
- package/dist/lib/esm/ValueProvider.d.mts +1 -1
- package/dist/lib/esm/ValueProvider.mjs +2 -2
- package/dist/lib/esm/codemirror/StateFieldSpec.d.mts +2 -2
- package/dist/lib/esm/codemirror/StateFieldSpec.mjs +1 -1
- package/dist/lib/esm/codemirror/index.mjs +1 -1
- package/dist/lib/esm/index.mjs +1 -1
- package/dist/lib/esm/obsidian/App.mjs +1 -1
- package/dist/lib/esm/obsidian/AttachmentPath.mjs +1 -1
- package/dist/lib/esm/obsidian/Backlink.d.mts +7 -7
- package/dist/lib/esm/obsidian/Backlink.mjs +2 -2
- package/dist/lib/esm/obsidian/Callout.d.mts +6 -6
- package/dist/lib/esm/obsidian/Callout.mjs +2 -2
- package/dist/lib/esm/obsidian/CodeBlockMarkdownInformation.d.mts +9 -9
- package/dist/lib/esm/obsidian/CodeBlockMarkdownInformation.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.mts +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.mjs +3 -3
- package/dist/lib/esm/obsidian/Components/SettingComponents/DateComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/DateTimeComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/EmailComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/FileComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.mjs +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleEmailComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleFileComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.d.mts +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.mjs +3 -3
- package/dist/lib/esm/obsidian/Components/SettingComponents/NumberComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/PasswordComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/SettingComponentWrapper.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TelephoneComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TextBasedComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TimeComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedRangeTextComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.d.mts +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.mjs +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/UrlComponent.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.d.mts +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.mjs +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.d.mts +3 -3
- package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.mjs +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/index.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/index.mjs +1 -1
- package/dist/lib/esm/obsidian/Dataview.d.mts +20 -20
- package/dist/lib/esm/obsidian/Dataview.mjs +3 -4
- package/dist/lib/esm/obsidian/DataviewLink.mjs +1 -1
- package/dist/lib/esm/obsidian/FileChange.d.mts +4 -4
- package/dist/lib/esm/obsidian/FileChange.mjs +2 -2
- package/dist/lib/esm/obsidian/FileManager.mjs +1 -1
- package/dist/lib/esm/obsidian/FileSystem.d.mts +6 -6
- package/dist/lib/esm/obsidian/FileSystem.mjs +2 -2
- package/dist/lib/esm/obsidian/Frontmatter.d.mts +7 -7
- package/dist/lib/esm/obsidian/Frontmatter.mjs +2 -2
- package/dist/lib/esm/obsidian/FrontmatterLinkCacheWithOffsets.d.mts +2 -2
- package/dist/lib/esm/obsidian/FrontmatterLinkCacheWithOffsets.mjs +2 -2
- package/dist/lib/esm/obsidian/Link.d.mts +50 -49
- package/dist/lib/esm/obsidian/Link.mjs +2 -2
- package/dist/lib/esm/obsidian/Logger.mjs +2 -2
- package/dist/lib/esm/obsidian/Loop.d.mts +13 -7
- package/dist/lib/esm/obsidian/Loop.mjs +2 -2
- package/dist/lib/esm/obsidian/Markdown.mjs +1 -1
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.d.mts +30 -17
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +24 -10
- package/dist/lib/esm/obsidian/MarkdownView.mjs +1 -1
- package/dist/lib/esm/obsidian/MetadataCache.mjs +8 -20
- package/dist/lib/esm/obsidian/Modals/Alert.d.mts +6 -6
- package/dist/lib/esm/obsidian/Modals/Alert.mjs +2 -2
- package/dist/lib/esm/obsidian/Modals/Confirm.d.mts +7 -7
- package/dist/lib/esm/obsidian/Modals/Confirm.mjs +2 -2
- package/dist/lib/esm/obsidian/Modals/ModalBase.d.mts +3 -3
- package/dist/lib/esm/obsidian/Modals/ModalBase.mjs +2 -2
- package/dist/lib/esm/obsidian/Modals/Prompt.d.mts +7 -7
- package/dist/lib/esm/obsidian/Modals/Prompt.mjs +2 -2
- package/dist/lib/esm/obsidian/Modals/SelectItem.d.mts +7 -7
- package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +2 -2
- package/dist/lib/esm/obsidian/Modals/index.mjs +1 -1
- package/dist/lib/esm/obsidian/MonkeyAround.d.mts +3 -3
- package/dist/lib/esm/obsidian/MonkeyAround.mjs +2 -2
- package/dist/lib/esm/obsidian/ObsidianSettings.mjs +1 -1
- package/dist/lib/esm/obsidian/Pdf.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/Plugin.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginContext.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginId.d.mts +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginId.mjs +2 -2
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +6 -6
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +3 -3
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsWrapper.d.mts +4 -4
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsWrapper.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/PluginTypesBase.d.mts +6 -6
- package/dist/lib/esm/obsidian/Plugin/PluginTypesBase.mjs +1 -1
- package/dist/lib/esm/obsidian/Plugin/index.mjs +1 -1
- package/dist/lib/esm/obsidian/Queue.mjs +1 -1
- package/dist/lib/esm/obsidian/React/AppContext.d.mts +2 -2
- package/dist/lib/esm/obsidian/React/AppContext.mjs +2 -2
- package/dist/lib/esm/obsidian/React/index.mjs +1 -1
- package/dist/lib/esm/obsidian/Reference.d.mts +8 -8
- package/dist/lib/esm/obsidian/Reference.mjs +2 -2
- package/dist/lib/esm/obsidian/RenameDeleteHandler.d.mts +2 -2
- package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +2 -2
- package/dist/lib/esm/obsidian/ResourceUrl.mjs +1 -1
- package/dist/lib/esm/obsidian/SettingEx.mjs +1 -1
- package/dist/lib/esm/obsidian/Validation.d.mts +1 -1
- package/dist/lib/esm/obsidian/Validation.mjs +2 -2
- package/dist/lib/esm/obsidian/Vault.d.mts +9 -1
- package/dist/lib/esm/obsidian/Vault.mjs +21 -4
- package/dist/lib/esm/obsidian/VaultEx.mjs +1 -1
- package/dist/lib/esm/obsidian/index.mjs +1 -1
- package/dist/lib/esm/url.mjs +1 -1
- package/package.json +1 -1
|
@@ -3,7 +3,7 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
|
3
3
|
if you want to view the source, please visit the github repository of this plugin
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd
|
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};globalThis.process=browserProcess})();
|
|
7
7
|
|
|
8
8
|
import { deepEqual } from "../ObjectUtils.mjs";
|
|
9
9
|
import { getFile } from "./FileSystem.mjs";
|
|
@@ -6,27 +6,27 @@
|
|
|
6
6
|
import type { App } from 'obsidian';
|
|
7
7
|
import { TAbstractFile, TFile, TFolder } from 'obsidian';
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* A file extension for `base` files.
|
|
10
10
|
*/
|
|
11
11
|
export declare const BASE_FILE_EXTENSION = "base";
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* A file extension for `canvas` files.
|
|
14
14
|
*/
|
|
15
15
|
export declare const CANVAS_FILE_EXTENSION = "canvas";
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* A file extension for `markdown` files.
|
|
18
18
|
*/
|
|
19
19
|
export declare const MARKDOWN_FILE_EXTENSION = "md";
|
|
20
20
|
/**
|
|
21
|
-
*
|
|
21
|
+
* A path or an instance of {@link TAbstractFile}.
|
|
22
22
|
*/
|
|
23
23
|
export type PathOrAbstractFile = string | TAbstractFile;
|
|
24
24
|
/**
|
|
25
|
-
*
|
|
25
|
+
* A path or a {@link TFile}.
|
|
26
26
|
*/
|
|
27
27
|
export type PathOrFile = string | TFile;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* A path or a {@link TFolder}.
|
|
30
30
|
*/
|
|
31
31
|
export type PathOrFolder = string | TFolder;
|
|
32
32
|
/**
|
|
@@ -3,7 +3,7 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
|
3
3
|
if you want to view the source, please visit the github repository of this plugin
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd
|
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};globalThis.process=browserProcess})();
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
normalizePath,
|
|
@@ -199,4 +199,4 @@ export {
|
|
|
199
199
|
isNote,
|
|
200
200
|
trimMarkdownExtension
|
|
201
201
|
};
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0ZpbGVTeXN0ZW0udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBUQWJzdHJhY3RGaWxlLCBURmlsZSwgYW5kIFRGb2xkZXIgaW5zdGFuY2VzIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBub3JtYWxpemVQYXRoLFxuICBUQWJzdHJhY3RGaWxlLFxuICBURmlsZSxcbiAgVEZvbGRlcixcbiAgVmF1bHRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuaW1wb3J0IHtcbiAgY3JlYXRlVEZpbGVJbnN0YW5jZSxcbiAgY3JlYXRlVEZvbGRlckluc3RhbmNlLFxuICBwYXJlbnRGb2xkZXJQYXRoXG59IGZyb20gJ29ic2lkaWFuLXR5cGluZ3MvaW1wbGVtZW50YXRpb25zJztcblxuaW1wb3J0IHtcbiAgZXh0bmFtZSxcbiAgcmVzb2x2ZVxufSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7IHRyaW1FbmQgfSBmcm9tICcuLi9TdHJpbmcudHMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGZpbGUgZXh0ZW5zaW9uIGZvciBiYXNlIGZpbGVzLlxuICovXG5leHBvcnQgY29uc3QgQkFTRV9GSUxFX0VYVEVOU0lPTiA9ICdiYXNlJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBmaWxlIGV4dGVuc2lvbiBmb3IgY2FudmFzIGZpbGVzLlxuICovXG5leHBvcnQgY29uc3QgQ0FOVkFTX0ZJTEVfRVhURU5TSU9OID0gJ2NhbnZhcyc7XG5cbi8qKlxuICogVGhlIGZpbGUgZXh0ZW5zaW9uIGZvciBNYXJrZG93biBmaWxlcy5cbiAqL1xuZXhwb3J0IGNvbnN0IE1BUktET1dOX0ZJTEVfRVhURU5TSU9OID0gJ21kJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcGF0aCBvciBhbiBpbnN0YW5jZSBvZiBUQWJzdHJhY3RGaWxlLlxuICovXG5leHBvcnQgdHlwZSBQYXRoT3JBYnN0cmFjdEZpbGUgPSBzdHJpbmcgfCBUQWJzdHJhY3RGaWxlO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwYXRoIG9yIGEgZmlsZS5cbiAqL1xuZXhwb3J0IHR5cGUgUGF0aE9yRmlsZSA9IHN0cmluZyB8IFRGaWxlO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwYXRoIG9yIGFuIGluc3RhbmNlIG9mIFRGb2xkZXIuXG4gKi9cbmV4cG9ydCB0eXBlIFBhdGhPckZvbGRlciA9IHN0cmluZyB8IFRGb2xkZXI7XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBwYXRoIG9yIGZpbGUgaGFzIHRoZSBzcGVjaWZpZWQgZXh0ZW5zaW9uLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBhYnN0cmFjdCBmaWxlIHRvIGNoZWNrLlxuICogQHBhcmFtIGV4dGVuc2lvbiAtIFRoZSBleHRlbnNpb24gdG8gY29tcGFyZSBhZ2FpbnN0LlxuICogQHJldHVybnMgUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHBhdGggb3IgZmlsZSBoYXMgdGhlIHNwZWNpZmllZCBleHRlbnNpb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tFeHRlbnNpb24oYXBwOiBBcHAsIHBhdGhPckZpbGU6IG51bGwgfCBQYXRoT3JBYnN0cmFjdEZpbGUsIGV4dGVuc2lvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGlmIChpc0ZpbGUocGF0aE9yRmlsZSkpIHtcbiAgICByZXR1cm4gcGF0aE9yRmlsZS5leHRlbnNpb24gPT09IGV4dGVuc2lvbjtcbiAgfVxuXG4gIGlmICh0eXBlb2YgcGF0aE9yRmlsZSA9PT0gJ3N0cmluZycpIHtcbiAgICBjb25zdCBmaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIHBhdGhPckZpbGUpO1xuICAgIGlmIChmaWxlKSB7XG4gICAgICByZXR1cm4gZmlsZS5leHRlbnNpb24gPT09IGV4dGVuc2lvbjtcbiAgICB9XG5cbiAgICByZXR1cm4gZXh0bmFtZShwYXRoT3JGaWxlKS5zbGljZSgxKSA9PT0gZXh0ZW5zaW9uO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgVEFic3RyYWN0RmlsZSBvYmplY3QgZm9yIHRoZSBnaXZlbiBwYXRoIG9yIGFic3RyYWN0IGZpbGUuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUgdG8gcmV0cmlldmUgdGhlIFRBYnN0cmFjdEZpbGUgZm9yLlxuICogQHBhcmFtIGlzQ2FzZUluc2Vuc2l0aXZlIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGVyZm9ybSBhIGNhc2UtaW5zZW5zaXRpdmUgc2VhcmNoLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gKiBAcmV0dXJucyBUaGUgVEFic3RyYWN0RmlsZSBvYmplY3QuXG4gKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBhYnN0cmFjdCBmaWxlIGlzIG5vdCBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFic3RyYWN0RmlsZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yQWJzdHJhY3RGaWxlLCBpc0Nhc2VJbnNlbnNpdGl2ZT86IGJvb2xlYW4pOiBUQWJzdHJhY3RGaWxlIHtcbiAgY29uc3QgZmlsZSA9IGdldEFic3RyYWN0RmlsZU9yTnVsbChhcHAsIHBhdGhPckZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcbiAgaWYgKCFmaWxlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBBYnN0cmFjdCBmaWxlIG5vdCBmb3VuZDogJHtwYXRoT3JGaWxlIGFzIHN0cmluZ31gKTtcbiAgfVxuXG4gIHJldHVybiBmaWxlO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhbiBpbnN0YW5jZSBvZiBUQWJzdHJhY3RGaWxlIG9yIG51bGwgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHBhdGggb3IgYWJzdHJhY3QgZmlsZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBhYnN0cmFjdCBmaWxlIHRvIHJldHJpZXZlLlxuICogQHBhcmFtIGlzQ2FzZUluc2Vuc2l0aXZlIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGVyZm9ybSBhIGNhc2UtaW5zZW5zaXRpdmUgc2VhcmNoLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gKiBAcmV0dXJucyBUaGUgaW5zdGFuY2Ugb2YgVEFic3RyYWN0RmlsZSBpZiBmb3VuZCwgb3RoZXJ3aXNlIG51bGwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwOiBBcHAsIHBhdGhPckZpbGU6IG51bGwgfCBQYXRoT3JBYnN0cmFjdEZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlPzogYm9vbGVhbik6IG51bGwgfCBUQWJzdHJhY3RGaWxlIHtcbiAgaWYgKHBhdGhPckZpbGUgPT09IG51bGwpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGlmIChpc0Fic3RyYWN0RmlsZShwYXRoT3JGaWxlKSkge1xuICAgIHJldHVybiBwYXRoT3JGaWxlO1xuICB9XG5cbiAgY29uc3QgZmlsZSA9IGdldEZpbGVJbnRlcm5hbChhcHAsIHBhdGhPckZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcblxuICBpZiAoZmlsZSkge1xuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgY29uc3QgcmVzb2x2ZWRQYXRoID0gZ2V0UmVzb2x2ZWRQYXRoKHBhdGhPckZpbGUpO1xuXG4gIGlmIChyZXNvbHZlZFBhdGggPT09IHBhdGhPckZpbGUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiBnZXRGaWxlSW50ZXJuYWwoYXBwLCByZXNvbHZlZFBhdGgsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYSBURmlsZSBvYmplY3QgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHBhdGggb3IgZmlsZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSB0byByZXRyaWV2ZSB0aGUgVEZpbGUgb2JqZWN0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRJbmNsdWRlTm9uRXhpc3RpbmcgLSBXaGV0aGVyIHRvIGluY2x1ZGUgYSBub24tZXhpc3RpbmcgZmlsZS5cbiAqICBJZiBgdHJ1ZWAsIGEgbmV3IFRGaWxlIG9iamVjdCBpcyBjcmVhdGVkIGZvciB0aGUgcHJvdmlkZWQgcGF0aC5cbiAqICBJZiBgZmFsc2VgLCBhbiBlcnJvciBpcyB0aHJvd24gaWYgdGhlIGZpbGUgaXMgbm90IGZvdW5kLlxuICogQHBhcmFtIGlzQ2FzZUluc2Vuc2l0aXZlIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGVyZm9ybSBhIGNhc2UtaW5zZW5zaXRpdmUgc2VhcmNoLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gKiBAcmV0dXJucyBUaGUgVEZpbGUgb2JqZWN0IGNvcnJlc3BvbmRpbmcgdG8gdGhlIHByb3ZpZGVkIHBhdGggb3IgZmlsZS5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIGZpbGUgaXMgbm90IGZvdW5kLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgc2hvdWxkSW5jbHVkZU5vbkV4aXN0aW5nPzogYm9vbGVhbiwgaXNDYXNlSW5zZW5zaXRpdmU/OiBib29sZWFuKTogVEZpbGUge1xuICBsZXQgZmlsZSA9IGdldEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlLCBpc0Nhc2VJbnNlbnNpdGl2ZSk7XG4gIGlmICghZmlsZSkge1xuICAgIGlmIChzaG91bGRJbmNsdWRlTm9uRXhpc3RpbmcpIHtcbiAgICAgIGZpbGUgPSBjcmVhdGVURmlsZUluc3RhbmNlKGFwcCwgcGF0aE9yRmlsZSBhcyBzdHJpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZpbGUgbm90IGZvdW5kOiAke3BhdGhPckZpbGUgYXMgc3RyaW5nfWApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmaWxlO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhIFRGaWxlIG9iamVjdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcGF0aCBvciBmaWxlLlxuICogSWYgdGhlIHByb3ZpZGVkIGFyZ3VtZW50IGlzIGFscmVhZHkgYSBURmlsZSBvYmplY3QsIGl0IGlzIHJldHVybmVkIGFzIGlzLlxuICogT3RoZXJ3aXNlLCB0aGUgZnVuY3Rpb24gdXNlcyB0aGUgYXBwJ3MgdmF1bHQgdG8gcmV0cmlldmUgdGhlIFRGaWxlIG9iamVjdCBieSBpdHMgcGF0aC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgVEZpbGUgb2JqZWN0LlxuICogQHBhcmFtIGlzQ2FzZUluc2Vuc2l0aXZlIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGVyZm9ybSBhIGNhc2UtaW5zZW5zaXRpdmUgc2VhcmNoLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gKiBAcmV0dXJucyBUaGUgVEZpbGUgb2JqZWN0IGlmIGZvdW5kLCBvdGhlcndpc2UgbnVsbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZpbGVPck51bGwoYXBwOiBBcHAsIHBhdGhPckZpbGU6IG51bGwgfCBQYXRoT3JGaWxlLCBpc0Nhc2VJbnNlbnNpdGl2ZT86IGJvb2xlYW4pOiBudWxsIHwgVEZpbGUge1xuICBjb25zdCBmaWxlID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGFwcCwgcGF0aE9yRmlsZSwgaXNDYXNlSW5zZW5zaXRpdmUpO1xuICBpZiAoaXNGaWxlKGZpbGUpKSB7XG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGEgVEZvbGRlciBvYmplY3QgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGFwcCBhbmQgcGF0aE9yRm9sZGVyLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZvbGRlciAtIFRoZSBwYXRoIG9yIGZvbGRlciBpZGVudGlmaWVyLlxuICogQHBhcmFtIHNob3VsZEluY2x1ZGVOb25FeGlzdGluZyAtIFdoZXRoZXIgdG8gYWxsb3cgdGhlIGZvbGRlciB0byBub3QgZXhpc3QuXG4gKiAgSWYgYHRydWVgLCBhIG5ldyBURm9sZGVyIG9iamVjdCBpcyBjcmVhdGVkIGZvciB0aGUgcHJvdmlkZWQgcGF0aC5cbiAqICBJZiBgZmFsc2VgLCBhbiBlcnJvciBpcyB0aHJvd24gaWYgdGhlIGZvbGRlciBpcyBub3QgZm91bmQuXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSByZXRyaWV2ZWQgVEZvbGRlciBvYmplY3QuXG4gKiBAdGhyb3dzIElmIHRoZSBmb2xkZXIgaXMgbm90IGZvdW5kLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9sZGVyKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IFBhdGhPckZvbGRlciwgc2hvdWxkSW5jbHVkZU5vbkV4aXN0aW5nPzogYm9vbGVhbiwgaXNDYXNlSW5zZW5zaXRpdmU/OiBib29sZWFuKTogVEZvbGRlciB7XG4gIGxldCBmb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBwYXRoT3JGb2xkZXIsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcbiAgaWYgKCFmb2xkZXIpIHtcbiAgICBpZiAoc2hvdWxkSW5jbHVkZU5vbkV4aXN0aW5nKSB7XG4gICAgICBmb2xkZXIgPSBjcmVhdGVURm9sZGVySW5zdGFuY2UoYXBwLCBwYXRoT3JGb2xkZXIgYXMgc3RyaW5nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGb2xkZXIgbm90IGZvdW5kOiAke3BhdGhPckZvbGRlciBhcyBzdHJpbmd9YCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZvbGRlcjtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYSBURm9sZGVyIG9iamVjdCBvciBudWxsIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXRoIG9yIGZvbGRlci5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZvbGRlciAtIFRoZSBwYXRoIG9yIGZvbGRlciB0byByZXRyaWV2ZSB0aGUgVEZvbGRlciBmcm9tLlxuICogQHBhcmFtIGlzQ2FzZUluc2Vuc2l0aXZlIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGVyZm9ybSBhIGNhc2UtaW5zZW5zaXRpdmUgc2VhcmNoLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gKiBAcmV0dXJucyBUaGUgVEZvbGRlciBvYmplY3QgaWYgZm91bmQsIG90aGVyd2lzZSBudWxsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9sZGVyT3JOdWxsKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IG51bGwgfCBQYXRoT3JGb2xkZXIsIGlzQ2FzZUluc2Vuc2l0aXZlPzogYm9vbGVhbik6IG51bGwgfCBURm9sZGVyIHtcbiAgY29uc3QgZm9sZGVyID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGFwcCwgcGF0aE9yRm9sZGVyLCBpc0Nhc2VJbnNlbnNpdGl2ZSk7XG4gIGlmIChpc0ZvbGRlcihmb2xkZXIpKSB7XG4gICAgcmV0dXJuIGZvbGRlcjtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYW4gYXJyYXkgb2YgVEZpbGUgb2JqZWN0cyByZXByZXNlbnRpbmcgdGhlIG1hcmtkb3duIGZpbGVzIHdpdGhpbiBhIHNwZWNpZmllZCBmb2xkZXIgb3IgcGF0aC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgcGF0aCBvciBmb2xkZXIgdG8gcmV0cmlldmUgdGhlIG1hcmtkb3duIGZpbGVzIGZyb20uXG4gKiBAcGFyYW0gaXNSZWN1cnNpdmUgLSBPcHRpb25hbC4gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcmVjdXJzaXZlbHkgc2VhcmNoIGZvciBtYXJrZG93biBmaWxlcyB3aXRoaW4gc3ViZm9sZGVycy4gRGVmYXVsdCBpcyBmYWxzZS5cbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIFRGaWxlIG9iamVjdHMgcmVwcmVzZW50aW5nIHRoZSBtYXJrZG93biBmaWxlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE1hcmtkb3duRmlsZXMoYXBwOiBBcHAsIHBhdGhPckZvbGRlcjogUGF0aE9yRm9sZGVyLCBpc1JlY3Vyc2l2ZT86IGJvb2xlYW4pOiBURmlsZVtdIHtcbiAgY29uc3QgZm9sZGVyID0gZ2V0Rm9sZGVyKGFwcCwgcGF0aE9yRm9sZGVyKTtcblxuICBsZXQgbWFya2Rvd25GaWxlczogVEZpbGVbXSA9IFtdO1xuXG4gIGlmIChpc1JlY3Vyc2l2ZSkge1xuICAgIFZhdWx0LnJlY3Vyc2VDaGlsZHJlbihmb2xkZXIsIChhYnN0cmFjdEZpbGUpID0+IHtcbiAgICAgIGlmIChpc01hcmtkb3duRmlsZShhcHAsIGFic3RyYWN0RmlsZSkpIHtcbiAgICAgICAgbWFya2Rvd25GaWxlcy5wdXNoKGFic3RyYWN0RmlsZSBhcyBURmlsZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgbWFya2Rvd25GaWxlcyA9IGZvbGRlci5jaGlsZHJlbi5maWx0ZXIoKGZpbGUpID0+IGlzTWFya2Rvd25GaWxlKGFwcCwgZmlsZSkpIGFzIFRGaWxlW107XG4gIH1cblxuICBtYXJrZG93bkZpbGVzID0gbWFya2Rvd25GaWxlcy5zb3J0KChhLCBiKSA9PiBhLnBhdGgubG9jYWxlQ29tcGFyZShiLnBhdGgpKTtcbiAgcmV0dXJuIG1hcmtkb3duRmlsZXM7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBURmlsZSBvYmplY3QgZm9yIHRoZSBnaXZlbiBwYXRoIG9yIGNyZWF0ZXMgYSBuZXcgb25lIGlmIGl0IGRvZXMgbm90IGV4aXN0LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCBvZiB0aGUgZmlsZSB0byByZXRyaWV2ZSBvciBjcmVhdGUuXG4gKiBAcmV0dXJucyBUaGUgVEZpbGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgZmlsZVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0T3JDcmVhdGVGaWxlKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBQcm9taXNlPFRGaWxlPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgcGF0aCk7XG4gIGlmIChmaWxlKSB7XG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBjb25zdCBmb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChwYXRoKTtcbiAgYXdhaXQgZ2V0T3JDcmVhdGVGb2xkZXIoYXBwLCBmb2xkZXJQYXRoKTtcblxuICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZShwYXRoLCAnJyk7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBURm9sZGVyIG9iamVjdCBmb3IgdGhlIGdpdmVuIHBhdGggb3IgY3JlYXRlcyBhIG5ldyBvbmUgaWYgaXQgZG9lcyBub3QgZXhpc3QuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmb2xkZXIgdG8gcmV0cmlldmUgb3IgY3JlYXRlLlxuICogQHJldHVybnMgVGhlIFRGb2xkZXIgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgZm9sZGVyLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0T3JDcmVhdGVGb2xkZXIoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8VEZvbGRlcj4ge1xuICBjb25zdCBmb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBwYXRoKTtcbiAgaWYgKGZvbGRlcikge1xuICAgIHJldHVybiBmb2xkZXI7XG4gIH1cblxuICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZUZvbGRlcihwYXRoKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBwYXRoIG9mIHRoZSBnaXZlbiBgcGF0aE9yRmlsZWAuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUuXG4gKiBAcmV0dXJucyBUaGUgcGF0aCBvZiB0aGUgYHBhdGhPckZpbGVgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGF0aChhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yQWJzdHJhY3RGaWxlKTogc3RyaW5nIHtcbiAgaWYgKGlzQWJzdHJhY3RGaWxlKHBhdGhPckZpbGUpKSB7XG4gICAgcmV0dXJuIHBhdGhPckZpbGUucGF0aDtcbiAgfVxuXG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlKTtcbiAgaWYgKGZpbGUpIHtcbiAgICByZXR1cm4gZmlsZS5wYXRoO1xuICB9XG5cbiAgcmV0dXJuIGdldFJlc29sdmVkUGF0aChwYXRoT3JGaWxlKTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaXMgYW4gaW5zdGFuY2Ugb2YgVEFic3RyYWN0RmlsZS5cbiAqXG4gKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhbiBpbnN0YW5jZSBvZiBUQWJzdHJhY3RGaWxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBYnN0cmFjdEZpbGUoZmlsZTogdW5rbm93bik6IGZpbGUgaXMgVEFic3RyYWN0RmlsZSB7XG4gIHJldHVybiBmaWxlIGluc3RhbmNlb2YgVEFic3RyYWN0RmlsZTtcbn1cblxuLyoqXG4gKiAgIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZmlsZSBpcyBhIGJhc2UgZmlsZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGZpbGUgaXMgYSBiYXNlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Jhc2VGaWxlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBudWxsIHwgUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiBjaGVja0V4dGVuc2lvbihhcHAsIHBhdGhPckZpbGUsIEJBU0VfRklMRV9FWFRFTlNJT04pO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZmlsZSBpcyBhIGNhbnZhcyBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhIGNhbnZhcyBmaWxlIG9yIG5vdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ2FudmFzRmlsZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogbnVsbCB8IFBhdGhPckFic3RyYWN0RmlsZSk6IGJvb2xlYW4ge1xuICByZXR1cm4gY2hlY2tFeHRlbnNpb24oYXBwLCBwYXRoT3JGaWxlLCBDQU5WQVNfRklMRV9FWFRFTlNJT04pO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZmlsZSBpcyBhbiBpbnN0YW5jZSBvZiBURmlsZS5cbiAqXG4gKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhbiBpbnN0YW5jZSBvZiBURmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsZShmaWxlOiB1bmtub3duKTogZmlsZSBpcyBURmlsZSB7XG4gIHJldHVybiBmaWxlIGluc3RhbmNlb2YgVEZpbGU7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBmaWxlIGlzIGEgZm9sZGVyLlxuICpcbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGZpbGUgaXMgYSBmb2xkZXIsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNGb2xkZXIoZmlsZTogdW5rbm93bik6IGZpbGUgaXMgVEZvbGRlciB7XG4gIHJldHVybiBmaWxlIGluc3RhbmNlb2YgVEZvbGRlcjtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaXMgYSBNYXJrZG93biBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhIE1hcmtkb3duIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc01hcmtkb3duRmlsZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogbnVsbCB8IFBhdGhPckFic3RyYWN0RmlsZSk6IGJvb2xlYW4ge1xuICByZXR1cm4gY2hlY2tFeHRlbnNpb24oYXBwLCBwYXRoT3JGaWxlLCBNQVJLRE9XTl9GSUxFX0VYVEVOU0lPTik7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBmaWxlIGlzIGEgbm90ZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgZmlsZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGZpbGUgaXMgYSBub3RlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNOb3RlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBudWxsIHwgUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiBpc01hcmtkb3duRmlsZShhcHAsIHBhdGhPckZpbGUpIHx8IGlzQ2FudmFzRmlsZShhcHAsIHBhdGhPckZpbGUpIHx8IGlzQmFzZUZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcbn1cblxuLyoqXG4gKiBUcmltcyB0aGUgbWFya2Rvd24gZXh0ZW5zaW9uIGZyb20gdGhlIGZpbGUgcGF0aCBpZiB0aGUgZmlsZSBpcyBhIG1hcmtkb3duIGZpbGUuXG4gKiBJZiB0aGUgZmlsZSBpcyBub3QgYSBtYXJrZG93biBmaWxlLCB0aGUgb3JpZ2luYWwgZmlsZSBwYXRoIGlzIHJldHVybmVkLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byB0cmltIHRoZSBtYXJrZG93biBleHRlbnNpb24gZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBmaWxlIHBhdGggd2l0aCB0aGUgbWFya2Rvd24gZXh0ZW5zaW9uIHRyaW1tZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmltTWFya2Rvd25FeHRlbnNpb24oYXBwOiBBcHAsIGZpbGU6IFRBYnN0cmFjdEZpbGUpOiBzdHJpbmcge1xuICBpZiAoIWlzTWFya2Rvd25GaWxlKGFwcCwgZmlsZSkpIHtcbiAgICByZXR1cm4gZmlsZS5wYXRoO1xuICB9XG5cbiAgcmV0dXJuIHRyaW1FbmQoZmlsZS5wYXRoLCBgLiR7TUFSS0RPV05fRklMRV9FWFRFTlNJT059YCk7XG59XG5cbmZ1bmN0aW9uIGdldEZpbGVJbnRlcm5hbChhcHA6IEFwcCwgcGF0aDogc3RyaW5nLCBpc0Nhc2VJbnNlbnNpdGl2ZT86IGJvb2xlYW4pOiBudWxsIHwgVEFic3RyYWN0RmlsZSB7XG4gIGlmIChpc0Nhc2VJbnNlbnNpdGl2ZSkge1xuICAgIHJldHVybiBhcHAudmF1bHQuZ2V0QWJzdHJhY3RGaWxlQnlQYXRoSW5zZW5zaXRpdmUocGF0aCk7XG4gIH1cblxuICByZXR1cm4gYXBwLnZhdWx0LmdldEFic3RyYWN0RmlsZUJ5UGF0aChwYXRoKSBhcyBudWxsIHwgVEZpbGU7XG59XG5cbmZ1bmN0aW9uIGdldFJlc29sdmVkUGF0aChwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gbm9ybWFsaXplUGF0aChyZXNvbHZlKCcvJywgcGF0aCkpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVFBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBRVA7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLGVBQWU7QUFLakIsTUFBTSxzQkFBc0I7QUFLNUIsTUFBTSx3QkFBd0I7QUFLOUIsTUFBTSwwQkFBMEI7QUF5QmhDLFNBQVMsZUFBZSxLQUFVLFlBQXVDLFdBQTRCO0FBQzFH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
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0ZpbGVTeXN0ZW0udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBUQWJzdHJhY3RGaWxlLCBURmlsZSwgYW5kIFRGb2xkZXIgaW5zdGFuY2VzIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBub3JtYWxpemVQYXRoLFxuICBUQWJzdHJhY3RGaWxlLFxuICBURmlsZSxcbiAgVEZvbGRlcixcbiAgVmF1bHRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuaW1wb3J0IHtcbiAgY3JlYXRlVEZpbGVJbnN0YW5jZSxcbiAgY3JlYXRlVEZvbGRlckluc3RhbmNlLFxuICBwYXJlbnRGb2xkZXJQYXRoXG59IGZyb20gJ29ic2lkaWFuLXR5cGluZ3MvaW1wbGVtZW50YXRpb25zJztcblxuaW1wb3J0IHtcbiAgZXh0bmFtZSxcbiAgcmVzb2x2ZVxufSBmcm9tICcuLi9QYXRoLnRzJztcbmltcG9ydCB7IHRyaW1FbmQgfSBmcm9tICcuLi9TdHJpbmcudHMnO1xuXG4vKipcbiAqIEEgZmlsZSBleHRlbnNpb24gZm9yIGBiYXNlYCBmaWxlcy5cbiAqL1xuZXhwb3J0IGNvbnN0IEJBU0VfRklMRV9FWFRFTlNJT04gPSAnYmFzZSc7XG5cbi8qKlxuICogQSBmaWxlIGV4dGVuc2lvbiBmb3IgYGNhbnZhc2AgZmlsZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBDQU5WQVNfRklMRV9FWFRFTlNJT04gPSAnY2FudmFzJztcblxuLyoqXG4gKiBBIGZpbGUgZXh0ZW5zaW9uIGZvciBgbWFya2Rvd25gIGZpbGVzLlxuICovXG5leHBvcnQgY29uc3QgTUFSS0RPV05fRklMRV9FWFRFTlNJT04gPSAnbWQnO1xuXG4vKipcbiAqIEEgcGF0aCBvciBhbiBpbnN0YW5jZSBvZiB7QGxpbmsgVEFic3RyYWN0RmlsZX0uXG4gKi9cbmV4cG9ydCB0eXBlIFBhdGhPckFic3RyYWN0RmlsZSA9IHN0cmluZyB8IFRBYnN0cmFjdEZpbGU7XG5cbi8qKlxuICogQSBwYXRoIG9yIGEge0BsaW5rIFRGaWxlfS5cbiAqL1xuZXhwb3J0IHR5cGUgUGF0aE9yRmlsZSA9IHN0cmluZyB8IFRGaWxlO1xuXG4vKipcbiAqIEEgcGF0aCBvciBhIHtAbGluayBURm9sZGVyfS5cbiAqL1xuZXhwb3J0IHR5cGUgUGF0aE9yRm9sZGVyID0gc3RyaW5nIHwgVEZvbGRlcjtcblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIHBhdGggb3IgZmlsZSBoYXMgdGhlIHNwZWNpZmllZCBleHRlbnNpb24uXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUgdG8gY2hlY2suXG4gKiBAcGFyYW0gZXh0ZW5zaW9uIC0gVGhlIGV4dGVuc2lvbiB0byBjb21wYXJlIGFnYWluc3QuXG4gKiBAcmV0dXJucyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcGF0aCBvciBmaWxlIGhhcyB0aGUgc3BlY2lmaWVkIGV4dGVuc2lvbiwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0V4dGVuc2lvbihhcHA6IEFwcCwgcGF0aE9yRmlsZTogbnVsbCB8IFBhdGhPckFic3RyYWN0RmlsZSwgZXh0ZW5zaW9uOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgaWYgKGlzRmlsZShwYXRoT3JGaWxlKSkge1xuICAgIHJldHVybiBwYXRoT3JGaWxlLmV4dGVuc2lvbiA9PT0gZXh0ZW5zaW9uO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBwYXRoT3JGaWxlID09PSAnc3RyaW5nJykge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgcGF0aE9yRmlsZSk7XG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIHJldHVybiBmaWxlLmV4dGVuc2lvbiA9PT0gZXh0ZW5zaW9uO1xuICAgIH1cblxuICAgIHJldHVybiBleHRuYW1lKHBhdGhPckZpbGUpLnNsaWNlKDEpID09PSBleHRlbnNpb247XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBUQWJzdHJhY3RGaWxlIG9iamVjdCBmb3IgdGhlIGdpdmVuIHBhdGggb3IgYWJzdHJhY3QgZmlsZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgYWJzdHJhY3QgZmlsZSB0byByZXRyaWV2ZSB0aGUgVEFic3RyYWN0RmlsZSBmb3IuXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSBUQWJzdHJhY3RGaWxlIG9iamVjdC5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIGFic3RyYWN0IGZpbGUgaXMgbm90IGZvdW5kLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWJzdHJhY3RGaWxlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlPzogYm9vbGVhbik6IFRBYnN0cmFjdEZpbGUge1xuICBjb25zdCBmaWxlID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGFwcCwgcGF0aE9yRmlsZSwgaXNDYXNlSW5zZW5zaXRpdmUpO1xuICBpZiAoIWZpbGUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEFic3RyYWN0IGZpbGUgbm90IGZvdW5kOiAke3BhdGhPckZpbGUgYXMgc3RyaW5nfWApO1xuICB9XG5cbiAgcmV0dXJuIGZpbGU7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGFuIGluc3RhbmNlIG9mIFRBYnN0cmFjdEZpbGUgb3IgbnVsbCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcGF0aCBvciBhYnN0cmFjdCBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGFic3RyYWN0IGZpbGUgdG8gcmV0cmlldmUuXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSBpbnN0YW5jZSBvZiBUQWJzdHJhY3RGaWxlIGlmIGZvdW5kLCBvdGhlcndpc2UgbnVsbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFic3RyYWN0RmlsZU9yTnVsbChhcHA6IEFwcCwgcGF0aE9yRmlsZTogbnVsbCB8IFBhdGhPckFic3RyYWN0RmlsZSwgaXNDYXNlSW5zZW5zaXRpdmU/OiBib29sZWFuKTogbnVsbCB8IFRBYnN0cmFjdEZpbGUge1xuICBpZiAocGF0aE9yRmlsZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKGlzQWJzdHJhY3RGaWxlKHBhdGhPckZpbGUpKSB7XG4gICAgcmV0dXJuIHBhdGhPckZpbGU7XG4gIH1cblxuICBjb25zdCBmaWxlID0gZ2V0RmlsZUludGVybmFsKGFwcCwgcGF0aE9yRmlsZSwgaXNDYXNlSW5zZW5zaXRpdmUpO1xuXG4gIGlmIChmaWxlKSB7XG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBjb25zdCByZXNvbHZlZFBhdGggPSBnZXRSZXNvbHZlZFBhdGgocGF0aE9yRmlsZSk7XG5cbiAgaWYgKHJlc29sdmVkUGF0aCA9PT0gcGF0aE9yRmlsZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGdldEZpbGVJbnRlcm5hbChhcHAsIHJlc29sdmVkUGF0aCwgaXNDYXNlSW5zZW5zaXRpdmUpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhIFRGaWxlIG9iamVjdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgcGF0aCBvciBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIHJldHJpZXZlIHRoZSBURmlsZSBvYmplY3QgZm9yLlxuICogQHBhcmFtIHNob3VsZEluY2x1ZGVOb25FeGlzdGluZyAtIFdoZXRoZXIgdG8gaW5jbHVkZSBhIG5vbi1leGlzdGluZyBmaWxlLlxuICogIElmIGB0cnVlYCwgYSBuZXcgVEZpbGUgb2JqZWN0IGlzIGNyZWF0ZWQgZm9yIHRoZSBwcm92aWRlZCBwYXRoLlxuICogIElmIGBmYWxzZWAsIGFuIGVycm9yIGlzIHRocm93biBpZiB0aGUgZmlsZSBpcyBub3QgZm91bmQuXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSBURmlsZSBvYmplY3QgY29ycmVzcG9uZGluZyB0byB0aGUgcHJvdmlkZWQgcGF0aCBvciBmaWxlLlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgZmlsZSBpcyBub3QgZm91bmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlLCBzaG91bGRJbmNsdWRlTm9uRXhpc3Rpbmc/OiBib29sZWFuLCBpc0Nhc2VJbnNlbnNpdGl2ZT86IGJvb2xlYW4pOiBURmlsZSB7XG4gIGxldCBmaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIHBhdGhPckZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcbiAgaWYgKCFmaWxlKSB7XG4gICAgaWYgKHNob3VsZEluY2x1ZGVOb25FeGlzdGluZykge1xuICAgICAgZmlsZSA9IGNyZWF0ZVRGaWxlSW5zdGFuY2UoYXBwLCBwYXRoT3JGaWxlIGFzIHN0cmluZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRmlsZSBub3QgZm91bmQ6ICR7cGF0aE9yRmlsZSBhcyBzdHJpbmd9YCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZpbGU7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGEgVEZpbGUgb2JqZWN0IGJhc2VkIG9uIHRoZSBwcm92aWRlZCBwYXRoIG9yIGZpbGUuXG4gKiBJZiB0aGUgcHJvdmlkZWQgYXJndW1lbnQgaXMgYWxyZWFkeSBhIFRGaWxlIG9iamVjdCwgaXQgaXMgcmV0dXJuZWQgYXMgaXMuXG4gKiBPdGhlcndpc2UsIHRoZSBmdW5jdGlvbiB1c2VzIHRoZSBhcHAncyB2YXVsdCB0byByZXRyaWV2ZSB0aGUgVEZpbGUgb2JqZWN0IGJ5IGl0cyBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBURmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSBURmlsZSBvYmplY3QgaWYgZm91bmQsIG90aGVyd2lzZSBudWxsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZU9yTnVsbChhcHA6IEFwcCwgcGF0aE9yRmlsZTogbnVsbCB8IFBhdGhPckZpbGUsIGlzQ2FzZUluc2Vuc2l0aXZlPzogYm9vbGVhbik6IG51bGwgfCBURmlsZSB7XG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlLCBpc0Nhc2VJbnNlbnNpdGl2ZSk7XG4gIGlmIChpc0ZpbGUoZmlsZSkpIHtcbiAgICByZXR1cm4gZmlsZTtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYSBURm9sZGVyIG9iamVjdCBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgYXBwIGFuZCBwYXRoT3JGb2xkZXIuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRm9sZGVyIC0gVGhlIHBhdGggb3IgZm9sZGVyIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0gc2hvdWxkSW5jbHVkZU5vbkV4aXN0aW5nIC0gV2hldGhlciB0byBhbGxvdyB0aGUgZm9sZGVyIHRvIG5vdCBleGlzdC5cbiAqICBJZiBgdHJ1ZWAsIGEgbmV3IFRGb2xkZXIgb2JqZWN0IGlzIGNyZWF0ZWQgZm9yIHRoZSBwcm92aWRlZCBwYXRoLlxuICogIElmIGBmYWxzZWAsIGFuIGVycm9yIGlzIHRocm93biBpZiB0aGUgZm9sZGVyIGlzIG5vdCBmb3VuZC5cbiAqIEBwYXJhbSBpc0Nhc2VJbnNlbnNpdGl2ZSAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBlcmZvcm0gYSBjYXNlLWluc2Vuc2l0aXZlIHNlYXJjaC4gRGVmYXVsdCBpcyBgZmFsc2VgLlxuICogQHJldHVybnMgVGhlIHJldHJpZXZlZCBURm9sZGVyIG9iamVjdC5cbiAqIEB0aHJvd3MgSWYgdGhlIGZvbGRlciBpcyBub3QgZm91bmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb2xkZXIoYXBwOiBBcHAsIHBhdGhPckZvbGRlcjogUGF0aE9yRm9sZGVyLCBzaG91bGRJbmNsdWRlTm9uRXhpc3Rpbmc/OiBib29sZWFuLCBpc0Nhc2VJbnNlbnNpdGl2ZT86IGJvb2xlYW4pOiBURm9sZGVyIHtcbiAgbGV0IGZvbGRlciA9IGdldEZvbGRlck9yTnVsbChhcHAsIHBhdGhPckZvbGRlciwgaXNDYXNlSW5zZW5zaXRpdmUpO1xuICBpZiAoIWZvbGRlcikge1xuICAgIGlmIChzaG91bGRJbmNsdWRlTm9uRXhpc3RpbmcpIHtcbiAgICAgIGZvbGRlciA9IGNyZWF0ZVRGb2xkZXJJbnN0YW5jZShhcHAsIHBhdGhPckZvbGRlciBhcyBzdHJpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvbGRlciBub3QgZm91bmQ6ICR7cGF0aE9yRm9sZGVyIGFzIHN0cmluZ31gKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZm9sZGVyO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhIFRGb2xkZXIgb2JqZWN0IG9yIG51bGwgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHBhdGggb3IgZm9sZGVyLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRm9sZGVyIC0gVGhlIHBhdGggb3IgZm9sZGVyIHRvIHJldHJpZXZlIHRoZSBURm9sZGVyIGZyb20uXG4gKiBAcGFyYW0gaXNDYXNlSW5zZW5zaXRpdmUgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwZXJmb3JtIGEgY2FzZS1pbnNlbnNpdGl2ZSBzZWFyY2guIERlZmF1bHQgaXMgYGZhbHNlYC5cbiAqIEByZXR1cm5zIFRoZSBURm9sZGVyIG9iamVjdCBpZiBmb3VuZCwgb3RoZXJ3aXNlIG51bGwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb2xkZXJPck51bGwoYXBwOiBBcHAsIHBhdGhPckZvbGRlcjogbnVsbCB8IFBhdGhPckZvbGRlciwgaXNDYXNlSW5zZW5zaXRpdmU/OiBib29sZWFuKTogbnVsbCB8IFRGb2xkZXIge1xuICBjb25zdCBmb2xkZXIgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGb2xkZXIsIGlzQ2FzZUluc2Vuc2l0aXZlKTtcbiAgaWYgKGlzRm9sZGVyKGZvbGRlcikpIHtcbiAgICByZXR1cm4gZm9sZGVyO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhbiBhcnJheSBvZiBURmlsZSBvYmplY3RzIHJlcHJlc2VudGluZyB0aGUgbWFya2Rvd24gZmlsZXMgd2l0aGluIGEgc3BlY2lmaWVkIGZvbGRlciBvciBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZvbGRlciAtIFRoZSBwYXRoIG9yIGZvbGRlciB0byByZXRyaWV2ZSB0aGUgbWFya2Rvd24gZmlsZXMgZnJvbS5cbiAqIEBwYXJhbSBpc1JlY3Vyc2l2ZSAtIE9wdGlvbmFsLiBTcGVjaWZpZXMgd2hldGhlciB0byByZWN1cnNpdmVseSBzZWFyY2ggZm9yIG1hcmtkb3duIGZpbGVzIHdpdGhpbiBzdWJmb2xkZXJzLiBEZWZhdWx0IGlzIGZhbHNlLlxuICogQHJldHVybnMgQW4gYXJyYXkgb2YgVEZpbGUgb2JqZWN0cyByZXByZXNlbnRpbmcgdGhlIG1hcmtkb3duIGZpbGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWFya2Rvd25GaWxlcyhhcHA6IEFwcCwgcGF0aE9yRm9sZGVyOiBQYXRoT3JGb2xkZXIsIGlzUmVjdXJzaXZlPzogYm9vbGVhbik6IFRGaWxlW10ge1xuICBjb25zdCBmb2xkZXIgPSBnZXRGb2xkZXIoYXBwLCBwYXRoT3JGb2xkZXIpO1xuXG4gIGxldCBtYXJrZG93bkZpbGVzOiBURmlsZVtdID0gW107XG5cbiAgaWYgKGlzUmVjdXJzaXZlKSB7XG4gICAgVmF1bHQucmVjdXJzZUNoaWxkcmVuKGZvbGRlciwgKGFic3RyYWN0RmlsZSkgPT4ge1xuICAgICAgaWYgKGlzTWFya2Rvd25GaWxlKGFwcCwgYWJzdHJhY3RGaWxlKSkge1xuICAgICAgICBtYXJrZG93bkZpbGVzLnB1c2goYWJzdHJhY3RGaWxlIGFzIFRGaWxlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBtYXJrZG93bkZpbGVzID0gZm9sZGVyLmNoaWxkcmVuLmZpbHRlcigoZmlsZSkgPT4gaXNNYXJrZG93bkZpbGUoYXBwLCBmaWxlKSkgYXMgVEZpbGVbXTtcbiAgfVxuXG4gIG1hcmtkb3duRmlsZXMgPSBtYXJrZG93bkZpbGVzLnNvcnQoKGEsIGIpID0+IGEucGF0aC5sb2NhbGVDb21wYXJlKGIucGF0aCkpO1xuICByZXR1cm4gbWFya2Rvd25GaWxlcztcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIFRGaWxlIG9iamVjdCBmb3IgdGhlIGdpdmVuIHBhdGggb3IgY3JlYXRlcyBhIG5ldyBvbmUgaWYgaXQgZG9lcyBub3QgZXhpc3QuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmaWxlIHRvIHJldHJpZXZlIG9yIGNyZWF0ZS5cbiAqIEByZXR1cm5zIFRoZSBURmlsZSBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBmaWxlXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPckNyZWF0ZUZpbGUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8VEZpbGU+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGVPck51bGwoYXBwLCBwYXRoKTtcbiAgaWYgKGZpbGUpIHtcbiAgICByZXR1cm4gZmlsZTtcbiAgfVxuXG4gIGNvbnN0IGZvbGRlclBhdGggPSBwYXJlbnRGb2xkZXJQYXRoKHBhdGgpO1xuICBhd2FpdCBnZXRPckNyZWF0ZUZvbGRlcihhcHAsIGZvbGRlclBhdGgpO1xuXG4gIHJldHVybiBhd2FpdCBhcHAudmF1bHQuY3JlYXRlKHBhdGgsICcnKTtcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIFRGb2xkZXIgb2JqZWN0IGZvciB0aGUgZ2l2ZW4gcGF0aCBvciBjcmVhdGVzIGEgbmV3IG9uZSBpZiBpdCBkb2VzIG5vdCBleGlzdC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZvbGRlciB0byByZXRyaWV2ZSBvciBjcmVhdGUuXG4gKiBAcmV0dXJucyBUaGUgVEZvbGRlciBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBmb2xkZXIuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPckNyZWF0ZUZvbGRlcihhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxURm9sZGVyPiB7XG4gIGNvbnN0IGZvbGRlciA9IGdldEZvbGRlck9yTnVsbChhcHAsIHBhdGgpO1xuICBpZiAoZm9sZGVyKSB7XG4gICAgcmV0dXJuIGZvbGRlcjtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBhcHAudmF1bHQuY3JlYXRlRm9sZGVyKHBhdGgpO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIHBhdGggb2YgdGhlIGdpdmVuIGBwYXRoT3JGaWxlYC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIEFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgYWJzdHJhY3QgZmlsZS5cbiAqIEByZXR1cm5zIFRoZSBwYXRoIG9mIHRoZSBgcGF0aE9yRmlsZWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQYXRoKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUpOiBzdHJpbmcge1xuICBpZiAoaXNBYnN0cmFjdEZpbGUocGF0aE9yRmlsZSkpIHtcbiAgICByZXR1cm4gcGF0aE9yRmlsZS5wYXRoO1xuICB9XG5cbiAgY29uc3QgZmlsZSA9IGdldEFic3RyYWN0RmlsZU9yTnVsbChhcHAsIHBhdGhPckZpbGUpO1xuICBpZiAoZmlsZSkge1xuICAgIHJldHVybiBmaWxlLnBhdGg7XG4gIH1cblxuICByZXR1cm4gZ2V0UmVzb2x2ZWRQYXRoKHBhdGhPckZpbGUpO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZmlsZSBpcyBhbiBpbnN0YW5jZSBvZiBUQWJzdHJhY3RGaWxlLlxuICpcbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmaWxlIGlzIGFuIGluc3RhbmNlIG9mIFRBYnN0cmFjdEZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Fic3RyYWN0RmlsZShmaWxlOiB1bmtub3duKTogZmlsZSBpcyBUQWJzdHJhY3RGaWxlIHtcbiAgcmV0dXJuIGZpbGUgaW5zdGFuY2VvZiBUQWJzdHJhY3RGaWxlO1xufVxuXG4vKipcbiAqICAgQ2hlY2tzIGlmIHRoZSBnaXZlbiBmaWxlIGlzIGEgYmFzZSBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhIGJhc2UgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQmFzZUZpbGUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IG51bGwgfCBQYXRoT3JBYnN0cmFjdEZpbGUpOiBib29sZWFuIHtcbiAgcmV0dXJuIGNoZWNrRXh0ZW5zaW9uKGFwcCwgcGF0aE9yRmlsZSwgQkFTRV9GSUxFX0VYVEVOU0lPTik7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBmaWxlIGlzIGEgY2FudmFzIGZpbGUuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmaWxlIGlzIGEgY2FudmFzIGZpbGUgb3Igbm90LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNDYW52YXNGaWxlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBudWxsIHwgUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiBjaGVja0V4dGVuc2lvbihhcHAsIHBhdGhPckZpbGUsIENBTlZBU19GSUxFX0VYVEVOU0lPTik7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBmaWxlIGlzIGFuIGluc3RhbmNlIG9mIFRGaWxlLlxuICpcbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmaWxlIGlzIGFuIGluc3RhbmNlIG9mIFRGaWxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNGaWxlKGZpbGU6IHVua25vd24pOiBmaWxlIGlzIFRGaWxlIHtcbiAgcmV0dXJuIGZpbGUgaW5zdGFuY2VvZiBURmlsZTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaXMgYSBmb2xkZXIuXG4gKlxuICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgZmlsZSBpcyBhIGZvbGRlciwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0ZvbGRlcihmaWxlOiB1bmtub3duKTogZmlsZSBpcyBURm9sZGVyIHtcbiAgcmV0dXJuIGZpbGUgaW5zdGFuY2VvZiBURm9sZGVyO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZmlsZSBpcyBhIE1hcmtkb3duIGZpbGUuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmaWxlIGlzIGEgTWFya2Rvd24gZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTWFya2Rvd25GaWxlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBudWxsIHwgUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiBjaGVja0V4dGVuc2lvbihhcHAsIHBhdGhPckZpbGUsIE1BUktET1dOX0ZJTEVfRVhURU5TSU9OKTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIGZpbGUgaXMgYSBub3RlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gQXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlsZSBpcyBhIG5vdGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc05vdGUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IG51bGwgfCBQYXRoT3JBYnN0cmFjdEZpbGUpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzTWFya2Rvd25GaWxlKGFwcCwgcGF0aE9yRmlsZSkgfHwgaXNDYW52YXNGaWxlKGFwcCwgcGF0aE9yRmlsZSkgfHwgaXNCYXNlRmlsZShhcHAsIHBhdGhPckZpbGUpO1xufVxuXG4vKipcbiAqIFRyaW1zIHRoZSBtYXJrZG93biBleHRlbnNpb24gZnJvbSB0aGUgZmlsZSBwYXRoIGlmIHRoZSBmaWxlIGlzIGEgbWFya2Rvd24gZmlsZS5cbiAqIElmIHRoZSBmaWxlIGlzIG5vdCBhIG1hcmtkb3duIGZpbGUsIHRoZSBvcmlnaW5hbCBmaWxlIHBhdGggaXMgcmV0dXJuZWQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBBcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIHRyaW0gdGhlIG1hcmtkb3duIGV4dGVuc2lvbiBmcm9tLlxuICogQHJldHVybnMgVGhlIGZpbGUgcGF0aCB3aXRoIHRoZSBtYXJrZG93biBleHRlbnNpb24gdHJpbW1lZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1NYXJrZG93bkV4dGVuc2lvbihhcHA6IEFwcCwgZmlsZTogVEFic3RyYWN0RmlsZSk6IHN0cmluZyB7XG4gIGlmICghaXNNYXJrZG93bkZpbGUoYXBwLCBmaWxlKSkge1xuICAgIHJldHVybiBmaWxlLnBhdGg7XG4gIH1cblxuICByZXR1cm4gdHJpbUVuZChmaWxlLnBhdGgsIGAuJHtNQVJLRE9XTl9GSUxFX0VYVEVOU0lPTn1gKTtcbn1cblxuZnVuY3Rpb24gZ2V0RmlsZUludGVybmFsKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcsIGlzQ2FzZUluc2Vuc2l0aXZlPzogYm9vbGVhbik6IG51bGwgfCBUQWJzdHJhY3RGaWxlIHtcbiAgaWYgKGlzQ2FzZUluc2Vuc2l0aXZlKSB7XG4gICAgcmV0dXJuIGFwcC52YXVsdC5nZXRBYnN0cmFjdEZpbGVCeVBhdGhJbnNlbnNpdGl2ZShwYXRoKTtcbiAgfVxuXG4gIHJldHVybiBhcHAudmF1bHQuZ2V0QWJzdHJhY3RGaWxlQnlQYXRoKHBhdGgpIGFzIG51bGwgfCBURmlsZTtcbn1cblxuZnVuY3Rpb24gZ2V0UmVzb2x2ZWRQYXRoKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBub3JtYWxpemVQYXRoKHJlc29sdmUoJy8nLCBwYXRoKSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBUUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFFUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsZUFBZTtBQUtqQixNQUFNLHNCQUFzQjtBQUs1QixNQUFNLHdCQUF3QjtBQUs5QixNQUFNLDBCQUEwQjtBQXlCaEMsU0FBUyxlQUFlLEtBQVUsWUFBdUMsV0FBNEI7QUFDMUcsTUFBSSxPQUFPLFVBQVUsR0FBRztBQUN0QixXQUFPLFdBQVcsY0FBYztB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
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { GenericObject } from '../ObjectUtils.mjs';
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* A combined front matter of a document.
|
|
9
9
|
* It is a union of custom front matter, Obsidian front matter, and additional properties.
|
|
10
10
|
*
|
|
11
11
|
* @typeParam CustomFrontmatter - The type of custom front matter.
|
|
12
12
|
*/
|
|
13
13
|
export type CombinedFrontmatter<CustomFrontmatter> = CustomFrontmatter & GenericObject & ObsidianFrontmatter;
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
15
|
+
* A front matter of an Obsidian file.
|
|
16
16
|
*
|
|
17
17
|
* @see {@link https://help.obsidian.md/Editing+and+formatting/Properties#Default+properties}
|
|
18
18
|
*/
|
|
@@ -31,25 +31,25 @@ export interface ObsidianFrontmatter {
|
|
|
31
31
|
tags?: string[];
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
|
-
*
|
|
34
|
+
* A front matter for publishing in Obsidian.
|
|
35
35
|
*
|
|
36
36
|
* @see {@link https://help.obsidian.md/Editing+and+formatting/Properties#Properties+for+Obsidian+Publish}
|
|
37
37
|
*/
|
|
38
38
|
export interface ObsidianPublishFrontmatter {
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* A cover image for the note.
|
|
41
41
|
*/
|
|
42
42
|
cover?: string;
|
|
43
43
|
/**
|
|
44
|
-
*
|
|
44
|
+
* A description for the note.
|
|
45
45
|
*/
|
|
46
46
|
description?: string;
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
48
|
+
* An image for the note.
|
|
49
49
|
*/
|
|
50
50
|
image?: string;
|
|
51
51
|
/**
|
|
52
|
-
*
|
|
52
|
+
* A permanent link for the note.
|
|
53
53
|
*/
|
|
54
54
|
permalink?: string;
|
|
55
55
|
/**
|
|
@@ -3,7 +3,7 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
|
3
3
|
if you want to view the source, please visit the github repository of this plugin
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd
|
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};globalThis.process=browserProcess})();
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
getFrontMatterInfo,
|
|
@@ -29,4 +29,4 @@ export {
|
|
|
29
29
|
parseFrontmatter,
|
|
30
30
|
setFrontmatter
|
|
31
31
|
};
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0Zyb250bWF0dGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBwcm9jZXNzaW5nIGFuZCBtYW5hZ2luZyBZQU1MIGZyb250IG1hdHRlciBpbiBPYnNpZGlhbiBub3Rlcy5cbiAqL1xuXG5pbXBvcnQge1xuICBnZXRGcm9udE1hdHRlckluZm8sXG4gIHBhcnNlWWFtbCxcbiAgc3RyaW5naWZ5WWFtbFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgR2VuZXJpY09iamVjdCB9IGZyb20gJy4uL09iamVjdFV0aWxzLnRzJztcblxuaW1wb3J0IHsgaW5zZXJ0QXQgfSBmcm9tICcuLi9TdHJpbmcudHMnO1xuXG4vKipcbiAqIEEgY29tYmluZWQgZnJvbnQgbWF0dGVyIG9mIGEgZG9jdW1lbnQuXG4gKiBJdCBpcyBhIHVuaW9uIG9mIGN1c3RvbSBmcm9udCBtYXR0ZXIsIE9ic2lkaWFuIGZyb250IG1hdHRlciwgYW5kIGFkZGl0aW9uYWwgcHJvcGVydGllcy5cbiAqXG4gKiBAdHlwZVBhcmFtIEN1c3RvbUZyb250bWF0dGVyIC0gVGhlIHR5cGUgb2YgY3VzdG9tIGZyb250IG1hdHRlci5cbiAqL1xuZXhwb3J0IHR5cGUgQ29tYmluZWRGcm9udG1hdHRlcjxDdXN0b21Gcm9udG1hdHRlcj4gPSBDdXN0b21Gcm9udG1hdHRlciAmIEdlbmVyaWNPYmplY3QgJiBPYnNpZGlhbkZyb250bWF0dGVyO1xuXG4vKipcbiAqIEEgZnJvbnQgbWF0dGVyIG9mIGFuIE9ic2lkaWFuIGZpbGUuXG4gKlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9oZWxwLm9ic2lkaWFuLm1kL0VkaXRpbmcrYW5kK2Zvcm1hdHRpbmcvUHJvcGVydGllcyNEZWZhdWx0K3Byb3BlcnRpZXN9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JzaWRpYW5Gcm9udG1hdHRlciB7XG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBhbGlhc2VzIGZvciB0aGUgbm90ZS5cbiAgICovXG4gIGFsaWFzZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW4gYXJyYXkgb2YgQ1NTIGNsYXNzZXMgdG8gYXBwbHkgdG8gdGhlIG5vdGUuXG4gICAqL1xuICBjc3NjbGFzc2VzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIHRhZ3MgZm9yIHRoZSBub3RlLlxuICAgKi9cbiAgdGFncz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEEgZnJvbnQgbWF0dGVyIGZvciBwdWJsaXNoaW5nIGluIE9ic2lkaWFuLlxuICpcbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vaGVscC5vYnNpZGlhbi5tZC9FZGl0aW5nK2FuZCtmb3JtYXR0aW5nL1Byb3BlcnRpZXMjUHJvcGVydGllcytmb3IrT2JzaWRpYW4rUHVibGlzaH1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPYnNpZGlhblB1Ymxpc2hGcm9udG1hdHRlciB7XG4gIC8qKlxuICAgKiBBIGNvdmVyIGltYWdlIGZvciB0aGUgbm90ZS5cbiAgICovXG4gIGNvdmVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aW9uIGZvciB0aGUgbm90ZS5cbiAgICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbiBpbWFnZSBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBpbWFnZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBwZXJtYW5lbnQgbGluayBmb3IgdGhlIG5vdGUuXG4gICAqL1xuICBwZXJtYWxpbms/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIG5vdGUgaXMgcHVibGlzaGVkLlxuICAgKi9cbiAgcHVibGlzaD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBjb250ZW50IHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gY29udGVudCAtIFRoZSBjb250ZW50IHN0cmluZyB0byBwYXJzZS5cbiAqIEByZXR1cm5zIFRoZSBwYXJzZWQgZnJvbnQgbWF0dGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGcm9udG1hdHRlcjxDdXN0b21Gcm9udG1hdHRlciA9IHVua25vd24+KGNvbnRlbnQ6IHN0cmluZyk6IENvbWJpbmVkRnJvbnRtYXR0ZXI8Q3VzdG9tRnJvbnRtYXR0ZXI+IHtcbiAgY29uc3QgZnJvbnRtYXR0ZXJJbmZvID0gZ2V0RnJvbnRNYXR0ZXJJbmZvKGNvbnRlbnQpO1xuICByZXR1cm4gKHBhcnNlWWFtbChmcm9udG1hdHRlckluZm8uZnJvbnRtYXR0ZXIpID8/IHt9KSBhcyBDb21iaW5lZEZyb250bWF0dGVyPEN1c3RvbUZyb250bWF0dGVyPjtcbn1cblxuLyoqXG4gKiBTZXRzIHRoZSBmcm9udCBtYXR0ZXIgb2YgYSBnaXZlbiBjb250ZW50IHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gY29udGVudCAtIFRoZSBjb250ZW50IHN0cmluZyB0byBzZXQgdGhlIGZyb250IG1hdHRlciBpbi5cbiAqIEBwYXJhbSBuZXdGcm9udG1hdHRlciAtIFRoZSBuZXcgZnJvbnQgbWF0dGVyIHRvIHNldC5cbiAqIEByZXR1cm5zIFRoZSBuZXcgY29udGVudCBzdHJpbmcgd2l0aCB0aGUgZnJvbnQgbWF0dGVyIHNldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldEZyb250bWF0dGVyKGNvbnRlbnQ6IHN0cmluZywgbmV3RnJvbnRtYXR0ZXI6IG9iamVjdCk6IHN0cmluZyB7XG4gIGNvbnN0IGZyb250bWF0dGVySW5mbyA9IGdldEZyb250TWF0dGVySW5mbyhjb250ZW50KTtcbiAgaWYgKE9iamVjdC5rZXlzKG5ld0Zyb250bWF0dGVyKS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gY29udGVudC5zbGljZShmcm9udG1hdHRlckluZm8uY29udGVudFN0YXJ0KTtcbiAgfVxuXG4gIGNvbnN0IG5ld0Zyb250bWF0dGVyU3RyID0gc3RyaW5naWZ5WWFtbChuZXdGcm9udG1hdHRlcik7XG5cbiAgcmV0dXJuIGZyb250bWF0dGVySW5mby5leGlzdHNcbiAgICA/IGluc2VydEF0KGNvbnRlbnQsIG5ld0Zyb250bWF0dGVyU3RyLCBmcm9udG1hdHRlckluZm8uZnJvbSwgZnJvbnRtYXR0ZXJJbmZvLnRvKVxuICAgIDogYC0tLVxcbiR7bmV3RnJvbnRtYXR0ZXJTdHJ9LS0tXFxuJHtjb250ZW50fWA7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBTUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBSVAsU0FBUyxnQkFBZ0I7QUFzRWxCLFNBQVMsaUJBQThDLFNBQXlEO0FBQ3JILFFBQU0sa0JBQWtCLG1CQUFtQixPQUFPO0FBQ2xELFNBQVEsVUFBVSxnQkFBZ0IsV0FBVyxLQUFLLENBQUM7QUFDckQ7QUFTTyxTQUFTLGVBQWUsU0FBaUIsZ0JBQWdDO0FBQzlFLFFBQU0sa0JBQWtCLG1CQUFtQixPQUFPO0FBQ2xELE1BQUksT0FBTyxLQUFLLGNBQWMsRUFBRSxXQUFXLEdBQUc7QUFDNUMsV0FBTyxRQUFRLE1BQU0sZ0JBQWdCLFlBQVk7QUFBQSxFQUNuRDtBQUVBLFFBQU0sb0JBQW9CLGNBQWMsY0FBYztBQUV0RCxTQUFPLGdCQUFnQixTQUNuQixTQUFTLFNBQVMsbUJBQW1CLGdCQUFnQixNQUFNLGdCQUFnQixFQUFFLElBQzdFO0FBQUEsRUFBUSxpQkFBaUI7QUFBQSxFQUFRLE9BQU87QUFDOUM7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -9,11 +9,11 @@ import type { FrontmatterLinkCache, Reference } from 'obsidian';
|
|
|
9
9
|
*/
|
|
10
10
|
export interface FrontmatterLinkCacheWithOffsets extends FrontmatterLinkCache {
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* An end offset of the link in the property value.
|
|
13
13
|
*/
|
|
14
14
|
endOffset: number;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* A start offset of the link in the property value.
|
|
17
17
|
*/
|
|
18
18
|
startOffset: number;
|
|
19
19
|
}
|
|
@@ -3,7 +3,7 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
|
3
3
|
if you want to view the source, please visit the github repository of this plugin
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd
|
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};globalThis.process=browserProcess})();
|
|
7
7
|
|
|
8
8
|
import { isFrontmatterLinkCache } from "obsidian-typings/implementations";
|
|
9
9
|
function isFrontmatterLinkCacheWithOffsets(reference) {
|
|
@@ -16,4 +16,4 @@ function isFrontmatterLinkCacheWithOffsets(reference) {
|
|
|
16
16
|
export {
|
|
17
17
|
isFrontmatterLinkCacheWithOffsets
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0Zyb250bWF0dGVyTGlua0NhY2hlV2l0aE9mZnNldHMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB0eXBlIGZvciBmcm9udG1hdHRlciBsaW5rIGNhY2hlIHdpdGggb2Zmc2V0cy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEZyb250bWF0dGVyTGlua0NhY2hlLFxuICBSZWZlcmVuY2Vcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBpc0Zyb250bWF0dGVyTGlua0NhY2hlIH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncy9pbXBsZW1lbnRhdGlvbnMnO1xuXG4vKipcbiAqIFR5cGUgZm9yIGZyb250bWF0dGVyIGxpbmsgY2FjaGUgd2l0aCBvZmZzZXRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZyb250bWF0dGVyTGlua0NhY2hlV2l0aE9mZnNldHMgZXh0ZW5kcyBGcm9udG1hdHRlckxpbmtDYWNoZSB7XG4gIC8qKlxuICAgKiBBbiBlbmQgb2Zmc2V0IG9mIHRoZSBsaW5rIGluIHRoZSBwcm9wZXJ0eSB2YWx1ZS5cbiAgICovXG4gIGVuZE9mZnNldDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBIHN0YXJ0IG9mZnNldCBvZiB0aGUgbGluayBpbiB0aGUgcHJvcGVydHkgdmFsdWUuXG4gICAqL1xuICBzdGFydE9mZnNldDogbnVtYmVyO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgcmVmZXJlbmNlIGlzIGEgZnJvbnRtYXR0ZXIgbGluayBjYWNoZSB3aXRoIG9mZnNldHMuXG4gKlxuICogQHBhcmFtIHJlZmVyZW5jZSAtIFRoZSByZWZlcmVuY2UgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSByZWZlcmVuY2UgaXMgYSBmcm9udG1hdHRlciBsaW5rIGNhY2hlIHdpdGggb2Zmc2V0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGVXaXRoT2Zmc2V0cyhyZWZlcmVuY2U6IFJlZmVyZW5jZSk6IHJlZmVyZW5jZSBpcyBGcm9udG1hdHRlckxpbmtDYWNoZVdpdGhPZmZzZXRzIHtcbiAgaWYgKCFpc0Zyb250bWF0dGVyTGlua0NhY2hlKHJlZmVyZW5jZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBmcm9udG1hdHRlckxpbmtDYWNoZVdpdGhPZmZzZXRzID0gcmVmZXJlbmNlIGFzIFBhcnRpYWw8RnJvbnRtYXR0ZXJMaW5rQ2FjaGVXaXRoT2Zmc2V0cz47XG4gIHJldHVybiBmcm9udG1hdHRlckxpbmtDYWNoZVdpdGhPZmZzZXRzLnN0YXJ0T2Zmc2V0ICE9PSB1bmRlZmluZWQgJiYgZnJvbnRtYXR0ZXJMaW5rQ2FjaGVXaXRoT2Zmc2V0cy5lbmRPZmZzZXQgIT09IHVuZGVmaW5lZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFXQSxTQUFTLDhCQUE4QjtBQXVCaEMsU0FBUyxrQ0FBa0MsV0FBb0U7QUFDcEgsTUFBSSxDQUFDLHVCQUF1QixTQUFTLEdBQUc7QUFDdEMsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLGtDQUFrQztBQUN4QyxTQUFPLGdDQUFnQyxnQkFBZ0IsVUFBYSxnQ0FBZ0MsY0FBYztBQUNwSDsiLAogICJuYW1lcyI6IFtdCn0K
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
*
|
|
4
4
|
* This module provides utilities for handling and updating links within Obsidian vaults. It includes
|
|
5
5
|
* functions to split paths, update links in files, and generate markdown links with various options.
|
|
6
|
-
* The functions integrate with Obsidian's API to ensure that links are managed correctly within the vault.
|
|
7
6
|
*/
|
|
8
7
|
import type { App, CachedMetadata, Reference, TFile } from 'obsidian';
|
|
9
8
|
import type { Promisable } from 'type-fest';
|
|
@@ -11,23 +10,23 @@ import type { MaybeReturn } from '../Type.mjs';
|
|
|
11
10
|
import type { PathOrFile } from './FileSystem.mjs';
|
|
12
11
|
import type { ProcessOptions } from './Vault.mjs';
|
|
13
12
|
/**
|
|
14
|
-
* Options for
|
|
13
|
+
* Options for {@link convertLink}.
|
|
15
14
|
*/
|
|
16
15
|
export interface ConvertLinkOptions {
|
|
17
16
|
/**
|
|
18
|
-
*
|
|
17
|
+
* An Obsidian app instance.
|
|
19
18
|
*/
|
|
20
19
|
app: App;
|
|
21
20
|
/**
|
|
22
|
-
*
|
|
21
|
+
* A reference for the link.
|
|
23
22
|
*/
|
|
24
23
|
link: Reference;
|
|
25
24
|
/**
|
|
26
|
-
*
|
|
25
|
+
* A source file containing the link.
|
|
27
26
|
*/
|
|
28
27
|
newSourcePathOrFile: PathOrFile;
|
|
29
28
|
/**
|
|
30
|
-
*
|
|
29
|
+
* An old path of the link.
|
|
31
30
|
*/
|
|
32
31
|
oldSourcePathOrFile?: PathOrFile;
|
|
33
32
|
/**
|
|
@@ -40,24 +39,26 @@ export interface ConvertLinkOptions {
|
|
|
40
39
|
shouldUpdateFileNameAlias?: boolean;
|
|
41
40
|
}
|
|
42
41
|
/**
|
|
43
|
-
* Wrapper for default options for
|
|
42
|
+
* Wrapper for default options for {@link GenerateMarkdownLinkOptions}.
|
|
44
43
|
*/
|
|
45
44
|
export interface GenerateMarkdownLinkDefaultOptionsWrapper {
|
|
46
45
|
/**
|
|
47
|
-
*
|
|
46
|
+
* A default options for generating markdown links.
|
|
47
|
+
*
|
|
48
|
+
* @returns A default options for generating markdown links.
|
|
48
49
|
*/
|
|
49
|
-
defaultOptionsFn
|
|
50
|
+
defaultOptionsFn(): Partial<GenerateMarkdownLinkOptions>;
|
|
50
51
|
}
|
|
51
52
|
/**
|
|
52
|
-
* Options for
|
|
53
|
+
* Options for {@link generateMarkdownLink}.
|
|
53
54
|
*/
|
|
54
55
|
export interface GenerateMarkdownLinkOptions {
|
|
55
56
|
/**
|
|
56
|
-
*
|
|
57
|
+
* An alias for the link.
|
|
57
58
|
*/
|
|
58
59
|
alias?: string;
|
|
59
60
|
/**
|
|
60
|
-
*
|
|
61
|
+
* An Obsidian app instance.
|
|
61
62
|
*/
|
|
62
63
|
app: App;
|
|
63
64
|
/**
|
|
@@ -77,7 +78,7 @@ export interface GenerateMarkdownLinkOptions {
|
|
|
77
78
|
*/
|
|
78
79
|
isWikilink?: boolean;
|
|
79
80
|
/**
|
|
80
|
-
*
|
|
81
|
+
* An original link text. If provided, it will be used to infer the values of `isEmbed`, `isWikilink`, `useLeadingDot`, and `useAngleBrackets`.
|
|
81
82
|
* These inferred values will be overridden by corresponding settings if specified.
|
|
82
83
|
*/
|
|
83
84
|
originalLink?: string;
|
|
@@ -98,32 +99,32 @@ export interface GenerateMarkdownLinkOptions {
|
|
|
98
99
|
*/
|
|
99
100
|
shouldUseLeadingDot?: boolean;
|
|
100
101
|
/**
|
|
101
|
-
*
|
|
102
|
+
* A source path of the link.
|
|
102
103
|
*/
|
|
103
104
|
sourcePathOrFile: PathOrFile;
|
|
104
105
|
/**
|
|
105
|
-
*
|
|
106
|
+
* A subpath of the link.
|
|
106
107
|
*/
|
|
107
108
|
subpath?: string;
|
|
108
109
|
/**
|
|
109
|
-
*
|
|
110
|
+
* A target path or file.
|
|
110
111
|
*/
|
|
111
112
|
targetPathOrFile: PathOrFile;
|
|
112
113
|
}
|
|
113
114
|
/**
|
|
114
|
-
*
|
|
115
|
+
* A result of parsing a link.
|
|
115
116
|
*/
|
|
116
117
|
export interface ParseLinkResult {
|
|
117
118
|
/**
|
|
118
|
-
*
|
|
119
|
+
* An alias of the link.
|
|
119
120
|
*/
|
|
120
121
|
alias?: string;
|
|
121
122
|
/**
|
|
122
|
-
*
|
|
123
|
+
* An encoded URL of the link.
|
|
123
124
|
*/
|
|
124
125
|
encodedUrl?: string;
|
|
125
126
|
/**
|
|
126
|
-
*
|
|
127
|
+
* An end offset of the link in the original text.
|
|
127
128
|
*/
|
|
128
129
|
endOffset: number;
|
|
129
130
|
/**
|
|
@@ -143,32 +144,32 @@ export interface ParseLinkResult {
|
|
|
143
144
|
*/
|
|
144
145
|
isWikilink: boolean;
|
|
145
146
|
/**
|
|
146
|
-
*
|
|
147
|
+
* A raw link text.
|
|
147
148
|
*/
|
|
148
149
|
raw: string;
|
|
149
150
|
/**
|
|
150
|
-
*
|
|
151
|
+
* A start offset of the link in the original text.
|
|
151
152
|
*/
|
|
152
153
|
startOffset: number;
|
|
153
154
|
/**
|
|
154
|
-
*
|
|
155
|
+
* A title of the link.
|
|
155
156
|
*/
|
|
156
157
|
title?: string;
|
|
157
158
|
/**
|
|
158
|
-
*
|
|
159
|
+
* An URL of the link.
|
|
159
160
|
*/
|
|
160
161
|
url: string;
|
|
161
162
|
}
|
|
162
163
|
/**
|
|
163
|
-
* Options for
|
|
164
|
+
* Options for {@link shouldResetAlias}.
|
|
164
165
|
*/
|
|
165
166
|
export interface ShouldResetAliasOptions {
|
|
166
167
|
/**
|
|
167
|
-
*
|
|
168
|
+
* An Obsidian app instance.
|
|
168
169
|
*/
|
|
169
170
|
app: App;
|
|
170
171
|
/**
|
|
171
|
-
*
|
|
172
|
+
* A display text of the link.
|
|
172
173
|
*/
|
|
173
174
|
displayText: string | undefined;
|
|
174
175
|
/**
|
|
@@ -176,19 +177,19 @@ export interface ShouldResetAliasOptions {
|
|
|
176
177
|
*/
|
|
177
178
|
isWikilink?: boolean;
|
|
178
179
|
/**
|
|
179
|
-
*
|
|
180
|
+
* A source path of the link.
|
|
180
181
|
*/
|
|
181
182
|
newSourcePathOrFile: PathOrFile;
|
|
182
183
|
/**
|
|
183
|
-
*
|
|
184
|
+
* An old source file containing the link.
|
|
184
185
|
*/
|
|
185
186
|
oldSourcePathOrFile?: PathOrFile;
|
|
186
187
|
/**
|
|
187
|
-
*
|
|
188
|
+
* An old target path of the link.
|
|
188
189
|
*/
|
|
189
190
|
oldTargetPath: PathOrFile;
|
|
190
191
|
/**
|
|
191
|
-
*
|
|
192
|
+
* A target path or file.
|
|
192
193
|
*/
|
|
193
194
|
targetPathOrFile: PathOrFile;
|
|
194
195
|
}
|
|
@@ -197,40 +198,40 @@ export interface ShouldResetAliasOptions {
|
|
|
197
198
|
*/
|
|
198
199
|
export interface SplitSubpathResult {
|
|
199
200
|
/**
|
|
200
|
-
*
|
|
201
|
+
* A link path.
|
|
201
202
|
*/
|
|
202
203
|
linkPath: string;
|
|
203
204
|
/**
|
|
204
|
-
*
|
|
205
|
+
* A subpath.
|
|
205
206
|
*/
|
|
206
207
|
subpath: string;
|
|
207
208
|
}
|
|
208
209
|
/**
|
|
209
|
-
* Options for
|
|
210
|
+
* Options for {@link updateLink}.
|
|
210
211
|
*/
|
|
211
212
|
export interface UpdateLinkOptions {
|
|
212
213
|
/**
|
|
213
|
-
*
|
|
214
|
+
* An Obsidian app instance.
|
|
214
215
|
*/
|
|
215
216
|
app: App;
|
|
216
217
|
/**
|
|
217
|
-
*
|
|
218
|
+
* A reference for the link.
|
|
218
219
|
*/
|
|
219
220
|
link: Reference;
|
|
220
221
|
/**
|
|
221
|
-
*
|
|
222
|
+
* A source file containing the link.
|
|
222
223
|
*/
|
|
223
224
|
newSourcePathOrFile: PathOrFile;
|
|
224
225
|
/**
|
|
225
|
-
*
|
|
226
|
+
* A file associated with the link.
|
|
226
227
|
*/
|
|
227
228
|
newTargetPathOrFile: PathOrFile;
|
|
228
229
|
/**
|
|
229
|
-
*
|
|
230
|
+
* An old source file containing the link.
|
|
230
231
|
*/
|
|
231
232
|
oldSourcePathOrFile?: PathOrFile;
|
|
232
233
|
/**
|
|
233
|
-
*
|
|
234
|
+
* An old path of the file.
|
|
234
235
|
*/
|
|
235
236
|
oldTargetPathOrFile?: PathOrFile;
|
|
236
237
|
/**
|
|
@@ -243,19 +244,19 @@ export interface UpdateLinkOptions {
|
|
|
243
244
|
shouldUpdateFileNameAlias?: boolean;
|
|
244
245
|
}
|
|
245
246
|
/**
|
|
246
|
-
* Options for
|
|
247
|
+
* Options for {@link updateLinksInFile}.
|
|
247
248
|
*/
|
|
248
249
|
export interface UpdateLinksInFileOptions extends ProcessOptions {
|
|
249
250
|
/**
|
|
250
|
-
*
|
|
251
|
+
* An Obsidian app instance.
|
|
251
252
|
*/
|
|
252
253
|
app: App;
|
|
253
254
|
/**
|
|
254
|
-
*
|
|
255
|
+
* A file to update the links in.
|
|
255
256
|
*/
|
|
256
257
|
newSourcePathOrFile: PathOrFile;
|
|
257
258
|
/**
|
|
258
|
-
*
|
|
259
|
+
* An old path of the file.
|
|
259
260
|
*/
|
|
260
261
|
oldSourcePathOrFile?: PathOrFile;
|
|
261
262
|
/**
|
|
@@ -272,23 +273,23 @@ export interface UpdateLinksInFileOptions extends ProcessOptions {
|
|
|
272
273
|
shouldUpdateFileNameAlias?: boolean;
|
|
273
274
|
}
|
|
274
275
|
/**
|
|
275
|
-
*
|
|
276
|
+
* Options for {@link updateLinksInContent}.
|
|
276
277
|
*/
|
|
277
278
|
interface UpdateLinksInContentOptions {
|
|
278
279
|
/**
|
|
279
|
-
*
|
|
280
|
+
* An Obsidian app instance.
|
|
280
281
|
*/
|
|
281
282
|
app: App;
|
|
282
283
|
/**
|
|
283
|
-
*
|
|
284
|
+
* A content to update the links in.
|
|
284
285
|
*/
|
|
285
286
|
content: string;
|
|
286
287
|
/**
|
|
287
|
-
*
|
|
288
|
+
* A new source path or file.
|
|
288
289
|
*/
|
|
289
290
|
newSourcePathOrFile: PathOrFile;
|
|
290
291
|
/**
|
|
291
|
-
*
|
|
292
|
+
* An old source path or file.
|
|
292
293
|
*/
|
|
293
294
|
oldSourcePathOrFile?: PathOrFile;
|
|
294
295
|
/**
|