obsidian-dev-utils 19.1.1 → 19.1.2-beta.3
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/@types/debug/package.json +1 -1
- package/CHANGELOG.md +13 -0
- package/ScriptUtils/CliUtils/package.json +3 -3
- package/ScriptUtils/CodeGenerator/package.json +3 -3
- package/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required/package.json +1 -1
- package/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines/package.json +1 -1
- package/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc/package.json +1 -1
- package/ScriptUtils/ESLint/ESLint/package.json +3 -3
- package/ScriptUtils/ESLint/eslint.config/package.json +3 -3
- package/ScriptUtils/ESLint/index/package.json +3 -3
- package/ScriptUtils/ESLint/package.json +3 -3
- package/ScriptUtils/Exec/package.json +3 -3
- package/ScriptUtils/Fs/package.json +3 -3
- package/ScriptUtils/JSON/package.json +3 -3
- package/ScriptUtils/NodeModules/package.json +3 -3
- package/ScriptUtils/Npm/package.json +3 -3
- package/ScriptUtils/NpmPublish/package.json +3 -3
- package/ScriptUtils/ObsidianDevUtilsRepoPaths/package.json +3 -3
- package/ScriptUtils/Root/package.json +3 -3
- package/ScriptUtils/build/package.json +3 -3
- package/ScriptUtils/cli/package.json +3 -3
- package/ScriptUtils/esbuild/Dependency/package.json +3 -3
- package/ScriptUtils/esbuild/ObsidianPluginBuilder/package.json +3 -3
- package/ScriptUtils/esbuild/changeExtensionPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/fixEsmPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/fixSourceMapsPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/index/package.json +3 -3
- package/ScriptUtils/esbuild/package.json +3 -3
- package/ScriptUtils/esbuild/preprocessPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/renameCssPlugin/package.json +3 -3
- package/ScriptUtils/esbuild/svelteWrapperPlugin/package.json +3 -3
- package/ScriptUtils/format/package.json +3 -3
- package/ScriptUtils/index/package.json +3 -3
- package/ScriptUtils/package.json +3 -3
- package/ScriptUtils/spellcheck/package.json +3 -3
- package/ScriptUtils/version/package.json +3 -3
- package/Transformers/DateTransformer/package.json +3 -3
- package/Transformers/DurationTransformer/package.json +3 -3
- package/Transformers/GroupTransformer/package.json +3 -3
- package/Transformers/SkipPrivatePropertyTransformer/package.json +3 -3
- package/Transformers/Transformer/package.json +3 -3
- package/Transformers/TypedTransformer/package.json +3 -3
- package/Transformers/index/package.json +3 -3
- package/Transformers/package.json +3 -3
- package/codemirror/StateFieldSpec/package.json +3 -3
- package/codemirror/index/package.json +3 -3
- package/codemirror/package.json +3 -3
- package/dist/lib/cjs/Async.cjs +186 -0
- package/dist/lib/cjs/Blob.cjs +109 -0
- package/dist/lib/cjs/CssClass.cjs +60 -0
- package/dist/lib/cjs/Debug.cjs +169 -0
- package/dist/lib/cjs/Debug.d.cts +41 -0
- package/dist/lib/cjs/DebugController.cjs +24 -0
- package/dist/lib/cjs/Enum.cjs +51 -0
- package/dist/lib/cjs/Error.cjs +111 -0
- package/dist/lib/cjs/Function.cjs +55 -0
- package/dist/lib/cjs/HTMLElement.cjs +91 -0
- package/dist/lib/cjs/Library.cjs +42 -0
- package/dist/lib/cjs/Object.cjs +306 -0
- package/dist/lib/cjs/Path.cjs +125 -0
- package/dist/lib/cjs/RegExp.cjs +48 -0
- package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +161 -0
- package/dist/lib/cjs/ScriptUtils/CliUtils.d.cts +70 -0
- package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +43 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +46 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +328 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/index.cjs +49 -0
- package/dist/lib/cjs/ScriptUtils/ESLint/index.d.cts +2 -0
- package/dist/lib/cjs/ScriptUtils/Exec.cjs +119 -0
- package/dist/lib/cjs/ScriptUtils/Fs.cjs +85 -0
- package/dist/lib/cjs/ScriptUtils/Fs.d.cts +72 -0
- package/dist/lib/cjs/ScriptUtils/JSON.cjs +83 -0
- package/dist/lib/cjs/ScriptUtils/JSON.d.cts +64 -0
- package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +95 -0
- package/dist/lib/cjs/ScriptUtils/Npm.cjs +138 -0
- package/dist/lib/cjs/ScriptUtils/Npm.d.cts +151 -0
- package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +45 -0
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +86 -0
- package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +106 -0
- package/dist/lib/cjs/ScriptUtils/Root.cjs +88 -0
- package/dist/lib/cjs/ScriptUtils/Root.d.cts +67 -0
- package/dist/lib/cjs/ScriptUtils/build.cjs +82 -0
- package/dist/lib/cjs/ScriptUtils/cli.cjs +88 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +122 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +178 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +53 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +68 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +66 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +49 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +75 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/index.cjs +70 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/index.d.cts +9 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +146 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +52 -0
- package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +75 -0
- package/dist/lib/cjs/ScriptUtils/format.cjs +69 -0
- package/dist/lib/cjs/ScriptUtils/index.cjs +94 -0
- package/dist/lib/cjs/ScriptUtils/index.d.cts +17 -0
- package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +39 -0
- package/dist/lib/cjs/ScriptUtils/version.cjs +389 -0
- package/dist/lib/cjs/String.cjs +154 -0
- package/dist/lib/cjs/String.d.cts +138 -0
- package/dist/lib/cjs/Transformers/DateTransformer.cjs +71 -0
- package/dist/lib/cjs/Transformers/DateTransformer.d.cts +35 -0
- package/dist/lib/cjs/Transformers/DurationTransformer.cjs +71 -0
- package/dist/lib/cjs/Transformers/DurationTransformer.d.cts +34 -0
- package/dist/lib/cjs/Transformers/GroupTransformer.cjs +118 -0
- package/dist/lib/cjs/Transformers/GroupTransformer.d.cts +65 -0
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +69 -0
- package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.d.cts +32 -0
- package/dist/lib/cjs/Transformers/Transformer.cjs +107 -0
- package/dist/lib/cjs/Transformers/TypedTransformer.cjs +38 -0
- package/dist/lib/cjs/Transformers/TypedTransformer.d.cts +37 -0
- package/dist/lib/cjs/Transformers/index.cjs +61 -0
- package/dist/lib/cjs/Transformers/index.d.cts +6 -0
- package/dist/lib/cjs/ValueProvider.cjs +44 -0
- package/dist/lib/cjs/ValueProvider.d.cts +22 -0
- package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +24 -0
- package/dist/lib/cjs/codemirror/index.cjs +46 -0
- package/dist/lib/cjs/codemirror/index.d.cts +1 -0
- package/dist/lib/cjs/index.cjs +103 -0
- package/dist/lib/cjs/index.d.cts +20 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/api/data-array.d.cts +136 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/api/extensions.d.cts +15 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/api/inline-api.d.cts +186 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/api/plugin-api.d.cts +209 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-import/csv.d.cts +3 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-import/inline-field.d.cts +42 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-import/markdown-file.d.cts +52 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-import/persister.d.cts +32 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-import/web-worker/import-impl.d.cts +6 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-index/index.d.cts +186 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-index/resolver.d.cts +23 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-model/markdown.d.cts +115 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-model/serialized/markdown.d.cts +106 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/data-model/value.d.cts +175 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/expression/binaryop.d.cts +43 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/expression/context.d.cts +49 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/expression/field.d.cts +82 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/expression/functions.d.cts +149 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/expression/parse.d.cts +163 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/index.d.cts +55 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/main.d.cts +52 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/query/engine.d.cts +103 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/query/parse.d.cts +44 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/query/query.d.cts +95 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/typings/obsidian-ex.d.cts +28 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/export/markdown.d.cts +15 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/lp-render.d.cts +37 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/markdown.d.cts +86 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/refreshable-view.d.cts +18 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/render.d.cts +33 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/calendar-view.d.cts +17 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/inline-field-live-preview.d.cts +42 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/inline-view.d.cts +28 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/js-view.d.cts +23 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/list-view.d.cts +25 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/table-view.d.cts +28 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/ui/views/task-view.d.cts +51 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/util/media.d.cts +6 -0
- package/dist/lib/cjs/obsidian/@types/Dataview/util/normalize.d.cts +44 -0
- package/dist/lib/cjs/obsidian/App.cjs +59 -0
- package/dist/lib/cjs/obsidian/AttachmentPath.cjs +95 -0
- package/dist/lib/cjs/obsidian/AttachmentPath.d.cts +54 -0
- package/dist/lib/cjs/obsidian/Backlink.cjs +110 -0
- package/dist/lib/cjs/obsidian/Backlink.d.cts +60 -0
- package/dist/lib/cjs/obsidian/Callout.cjs +97 -0
- package/dist/lib/cjs/obsidian/Callout.d.cts +55 -0
- package/dist/lib/cjs/obsidian/Components/DateComponent.cjs +77 -0
- package/dist/lib/cjs/obsidian/Components/DateComponent.d.cts +36 -0
- package/dist/lib/cjs/obsidian/Components/DateTimeComponent.cjs +77 -0
- package/dist/lib/cjs/obsidian/Components/DateTimeComponent.d.cts +36 -0
- package/dist/lib/cjs/obsidian/Components/EmailComponent.cjs +56 -0
- package/dist/lib/cjs/obsidian/Components/EmailComponent.d.cts +29 -0
- package/dist/lib/cjs/obsidian/Components/FileComponent.cjs +72 -0
- package/dist/lib/cjs/obsidian/Components/FileComponent.d.cts +41 -0
- package/dist/lib/cjs/obsidian/Components/MonthComponent.cjs +85 -0
- package/dist/lib/cjs/obsidian/Components/MonthComponent.d.cts +49 -0
- package/dist/lib/cjs/obsidian/Components/MultipleDropdownComponent.cjs +120 -0
- package/dist/lib/cjs/obsidian/Components/MultipleDropdownComponent.d.cts +73 -0
- package/dist/lib/cjs/obsidian/Components/MultipleEmailComponent.cjs +66 -0
- package/dist/lib/cjs/obsidian/Components/MultipleEmailComponent.d.cts +36 -0
- package/dist/lib/cjs/obsidian/Components/MultipleFileComponent.cjs +73 -0
- package/dist/lib/cjs/obsidian/Components/MultipleFileComponent.d.cts +41 -0
- package/dist/lib/cjs/obsidian/Components/MultipleTextComponent.cjs +108 -0
- package/dist/lib/cjs/obsidian/Components/MultipleTextComponent.d.cts +67 -0
- package/dist/lib/cjs/obsidian/Components/NumberComponent.cjs +56 -0
- package/dist/lib/cjs/obsidian/Components/NumberComponent.d.cts +29 -0
- package/dist/lib/cjs/obsidian/Components/TimeComponent.cjs +74 -0
- package/dist/lib/cjs/obsidian/Components/TimeComponent.d.cts +37 -0
- package/dist/lib/cjs/obsidian/Components/TypedRangeTextComponent.cjs +68 -0
- package/dist/lib/cjs/obsidian/Components/TypedRangeTextComponent.d.cts +31 -0
- package/dist/lib/cjs/obsidian/Components/TypedTextComponent.cjs +129 -0
- package/dist/lib/cjs/obsidian/Components/TypedTextComponent.d.cts +84 -0
- package/dist/lib/cjs/obsidian/Components/UrlComponent.cjs +56 -0
- package/dist/lib/cjs/obsidian/Components/UrlComponent.d.cts +29 -0
- package/dist/lib/cjs/obsidian/Components/ValidatorComponent.cjs +71 -0
- package/dist/lib/cjs/obsidian/Components/ValidatorComponent.d.cts +22 -0
- package/dist/lib/cjs/obsidian/Components/ValueComponentWithChangeTracking.cjs +25 -0
- package/dist/lib/cjs/obsidian/Components/ValueComponentWithChangeTracking.d.cts +17 -0
- package/dist/lib/cjs/obsidian/Components/WeekComponent.cjs +85 -0
- package/dist/lib/cjs/obsidian/Components/WeekComponent.d.cts +49 -0
- package/dist/lib/cjs/obsidian/Components/index.cjs +94 -0
- package/dist/lib/cjs/obsidian/Components/index.d.cts +17 -0
- package/dist/lib/cjs/obsidian/Dataview.cjs +255 -0
- package/dist/lib/cjs/obsidian/Dataview.d.cts +215 -0
- package/dist/lib/cjs/obsidian/DataviewLink.cjs +48 -0
- package/dist/lib/cjs/obsidian/DataviewLink.d.cts +23 -0
- package/dist/lib/cjs/obsidian/FileChange.cjs +139 -0
- package/dist/lib/cjs/obsidian/FileChange.d.cts +68 -0
- package/dist/lib/cjs/obsidian/FileManager.cjs +89 -0
- package/dist/lib/cjs/obsidian/FileManager.d.cts +38 -0
- package/dist/lib/cjs/obsidian/FileSystem.cjs +226 -0
- package/dist/lib/cjs/obsidian/Frontmatter.cjs +53 -0
- package/dist/lib/cjs/obsidian/Link.cjs +432 -0
- package/dist/lib/cjs/obsidian/Link.d.cts +366 -0
- package/dist/lib/cjs/obsidian/Logger.cjs +69 -0
- package/dist/lib/cjs/obsidian/Logger.d.cts +13 -0
- package/dist/lib/cjs/obsidian/Loop.cjs +63 -0
- package/dist/lib/cjs/obsidian/Loop.d.cts +36 -0
- package/dist/lib/cjs/obsidian/Markdown.cjs +61 -0
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +69 -0
- package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.d.cts +23 -0
- package/dist/lib/cjs/obsidian/MarkdownView.cjs +45 -0
- package/dist/lib/cjs/obsidian/MetadataCache.cjs +239 -0
- package/dist/lib/cjs/obsidian/MetadataCache.d.cts +87 -0
- package/dist/lib/cjs/obsidian/Modals/Alert.cjs +67 -0
- package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +76 -0
- package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +56 -0
- package/dist/lib/cjs/obsidian/Modals/ModalBase.d.cts +35 -0
- package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +110 -0
- package/dist/lib/cjs/obsidian/Modals/Prompt.d.cts +50 -0
- package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +73 -0
- package/dist/lib/cjs/obsidian/Modals/index.cjs +58 -0
- package/dist/lib/cjs/obsidian/Modals/index.d.cts +5 -0
- package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +43 -0
- package/dist/lib/cjs/obsidian/Pdf.cjs +66 -0
- package/dist/lib/cjs/obsidian/Plugin/EmptySettings.cjs +38 -0
- package/dist/lib/cjs/obsidian/Plugin/EmptySettings.d.cts +14 -0
- package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +60 -0
- package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +53 -0
- package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +50 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +168 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.d.cts +108 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +62 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +49 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsBase.cjs +93 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsBase.d.cts +31 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +122 -0
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +99 -0
- package/dist/lib/cjs/obsidian/Plugin/index.cjs +67 -0
- package/dist/lib/cjs/obsidian/Plugin/index.d.cts +8 -0
- package/dist/lib/cjs/obsidian/Queue.cjs +72 -0
- package/dist/lib/cjs/obsidian/Queue.d.cts +30 -0
- package/dist/lib/cjs/obsidian/Reference.cjs +67 -0
- package/dist/lib/cjs/obsidian/Reference.d.cts +21 -0
- package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +421 -0
- package/dist/lib/cjs/obsidian/ResourceUrl.cjs +43 -0
- package/dist/lib/cjs/obsidian/SettingEx.cjs +182 -0
- package/dist/lib/cjs/obsidian/SettingEx.d.cts +124 -0
- package/dist/lib/cjs/obsidian/Vault.cjs +268 -0
- package/dist/lib/cjs/obsidian/Vault.d.cts +130 -0
- package/dist/lib/cjs/obsidian/VaultEx.cjs +88 -0
- package/dist/lib/cjs/obsidian/VaultEx.d.cts +27 -0
- package/dist/lib/cjs/obsidian/index.cjs +130 -0
- package/dist/lib/cjs/obsidian/index.d.cts +29 -0
- package/dist/lib/cjs/url.cjs +49 -0
- package/dist/lib/esm/@types/debug.d.mts +16 -0
- package/dist/lib/esm/Async.d.mts +153 -0
- package/dist/lib/esm/Async.mjs +154 -0
- package/dist/lib/esm/Blob.d.mts +40 -0
- package/dist/lib/esm/Blob.mjs +81 -0
- package/dist/lib/esm/CssClass.d.mts +97 -0
- package/dist/lib/esm/CssClass.mjs +36 -0
- package/dist/lib/esm/Debug.d.mts +41 -0
- package/dist/lib/esm/Debug.mjs +137 -0
- package/dist/lib/esm/DebugController.d.mts +85 -0
- package/dist/lib/esm/Enum.d.mts +20 -0
- package/dist/lib/esm/Enum.mjs +26 -0
- package/dist/lib/esm/Error.d.mts +45 -0
- package/dist/lib/esm/Error.mjs +82 -0
- package/dist/lib/esm/Function.d.mts +28 -0
- package/dist/lib/esm/Function.mjs +28 -0
- package/dist/lib/esm/HTMLElement.d.mts +49 -0
- package/dist/lib/esm/HTMLElement.mjs +65 -0
- package/dist/lib/esm/Library.d.mts +16 -0
- package/dist/lib/esm/Library.mjs +16 -0
- package/dist/lib/esm/Object.d.mts +211 -0
- package/dist/lib/esm/Object.mjs +274 -0
- package/dist/lib/esm/Path.d.mts +133 -0
- package/dist/lib/esm/Path.mjs +76 -0
- package/dist/lib/esm/RegExp.d.mts +18 -0
- package/dist/lib/esm/RegExp.mjs +23 -0
- package/dist/lib/esm/ScriptUtils/CliUtils.d.mts +70 -0
- package/dist/lib/esm/ScriptUtils/CliUtils.mjs +135 -0
- package/dist/lib/esm/ScriptUtils/CodeGenerator.d.mts +12 -0
- package/dist/lib/esm/ScriptUtils/CodeGenerator.mjs +19 -0
- package/dist/lib/esm/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.mts +13 -0
- package/dist/lib/esm/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.mts +13 -0
- package/dist/lib/esm/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.mts +13 -0
- package/dist/lib/esm/ScriptUtils/ESLint/ESLint.d.mts +13 -0
- package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +28 -0
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.d.mts +16 -0
- package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +294 -0
- package/dist/lib/esm/ScriptUtils/ESLint/index.d.mts +2 -0
- package/dist/lib/esm/ScriptUtils/ESLint/index.mjs +14 -0
- package/dist/lib/esm/ScriptUtils/Exec.d.mts +83 -0
- package/dist/lib/esm/ScriptUtils/Exec.mjs +98 -0
- package/dist/lib/esm/ScriptUtils/Fs.d.mts +72 -0
- package/dist/lib/esm/ScriptUtils/Fs.mjs +64 -0
- package/dist/lib/esm/ScriptUtils/JSON.d.mts +64 -0
- package/dist/lib/esm/ScriptUtils/JSON.mjs +60 -0
- package/dist/lib/esm/ScriptUtils/NodeModules.d.mts +14 -0
- package/dist/lib/esm/ScriptUtils/NodeModules.mjs +62 -0
- package/dist/lib/esm/ScriptUtils/Npm.d.mts +151 -0
- package/dist/lib/esm/ScriptUtils/Npm.mjs +106 -0
- package/dist/lib/esm/ScriptUtils/NpmPublish.d.mts +9 -0
- package/dist/lib/esm/ScriptUtils/NpmPublish.mjs +21 -0
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +106 -0
- package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +62 -0
- package/dist/lib/esm/ScriptUtils/Root.d.mts +67 -0
- package/dist/lib/esm/ScriptUtils/Root.mjs +66 -0
- package/dist/lib/esm/ScriptUtils/build.d.mts +41 -0
- package/dist/lib/esm/ScriptUtils/build.mjs +60 -0
- package/dist/lib/esm/ScriptUtils/cli.d.mts +14 -0
- package/dist/lib/esm/ScriptUtils/cli.mjs +65 -0
- package/dist/lib/esm/ScriptUtils/esbuild/Dependency.d.mts +18 -0
- package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +95 -0
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +53 -0
- package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +149 -0
- package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.d.mts +12 -0
- package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +44 -0
- package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.mts +18 -0
- package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +50 -0
- package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.d.mts +11 -0
- package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +25 -0
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.d.mts +17 -0
- package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +55 -0
- package/dist/lib/esm/ScriptUtils/esbuild/index.d.mts +9 -0
- package/dist/lib/esm/ScriptUtils/esbuild/index.mjs +28 -0
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.d.mts +23 -0
- package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +128 -0
- package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.d.mts +8 -0
- package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +31 -0
- package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.d.mts +8 -0
- package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +41 -0
- package/dist/lib/esm/ScriptUtils/format.d.mts +10 -0
- package/dist/lib/esm/ScriptUtils/format.mjs +41 -0
- package/dist/lib/esm/ScriptUtils/index.d.mts +17 -0
- package/dist/lib/esm/ScriptUtils/index.mjs +44 -0
- package/dist/lib/esm/ScriptUtils/spellcheck.d.mts +14 -0
- package/dist/lib/esm/ScriptUtils/spellcheck.mjs +15 -0
- package/dist/lib/esm/ScriptUtils/version.d.mts +171 -0
- package/dist/lib/esm/ScriptUtils/version.mjs +365 -0
- package/dist/lib/esm/String.d.mts +138 -0
- package/dist/lib/esm/String.mjs +119 -0
- package/dist/lib/esm/Transformers/DateTransformer.d.mts +35 -0
- package/dist/lib/esm/Transformers/DateTransformer.mjs +47 -0
- package/dist/lib/esm/Transformers/DurationTransformer.d.mts +34 -0
- package/dist/lib/esm/Transformers/DurationTransformer.mjs +47 -0
- package/dist/lib/esm/Transformers/GroupTransformer.d.mts +65 -0
- package/dist/lib/esm/Transformers/GroupTransformer.mjs +94 -0
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.d.mts +32 -0
- package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.mjs +45 -0
- package/dist/lib/esm/Transformers/Transformer.d.mts +67 -0
- package/dist/lib/esm/Transformers/Transformer.mjs +83 -0
- package/dist/lib/esm/Transformers/TypedTransformer.d.mts +37 -0
- package/dist/lib/esm/Transformers/TypedTransformer.mjs +14 -0
- package/dist/lib/esm/Transformers/index.d.mts +6 -0
- package/dist/lib/esm/Transformers/index.mjs +22 -0
- package/dist/lib/esm/ValueProvider.d.mts +22 -0
- package/dist/lib/esm/ValueProvider.mjs +20 -0
- package/dist/lib/esm/codemirror/StateFieldSpec.d.mts +68 -0
- package/dist/lib/esm/codemirror/index.d.mts +1 -0
- package/dist/lib/esm/codemirror/index.mjs +12 -0
- package/dist/lib/esm/index.d.mts +20 -0
- package/dist/lib/esm/index.mjs +50 -0
- package/dist/lib/esm/obsidian/@types/Dataview/api/data-array.d.mts +136 -0
- package/dist/lib/esm/obsidian/@types/Dataview/api/extensions.d.mts +15 -0
- package/dist/lib/esm/obsidian/@types/Dataview/api/inline-api.d.mts +186 -0
- package/dist/lib/esm/obsidian/@types/Dataview/api/plugin-api.d.mts +209 -0
- package/dist/lib/esm/obsidian/@types/Dataview/api/result.d.mts +38 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/common.d.mts +3 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/csv.d.mts +3 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/inline-field.d.mts +42 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/markdown-file.d.mts +52 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/persister.d.mts +32 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/web-worker/import-entry.d.mts +1 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/web-worker/import-impl.d.mts +6 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-import/web-worker/import-manager.d.mts +37 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-index/index.d.mts +186 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-index/resolver.d.mts +23 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-index/source.d.mts +71 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-model/markdown.d.mts +115 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-model/serialized/markdown.d.mts +106 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-model/transferable.d.mts +7 -0
- package/dist/lib/esm/obsidian/@types/Dataview/data-model/value.d.mts +175 -0
- package/dist/lib/esm/obsidian/@types/Dataview/expression/binaryop.d.mts +43 -0
- package/dist/lib/esm/obsidian/@types/Dataview/expression/context.d.mts +49 -0
- package/dist/lib/esm/obsidian/@types/Dataview/expression/field.d.mts +82 -0
- package/dist/lib/esm/obsidian/@types/Dataview/expression/functions.d.mts +149 -0
- package/dist/lib/esm/obsidian/@types/Dataview/expression/parse.d.mts +163 -0
- package/dist/lib/esm/obsidian/@types/Dataview/index.d.mts +55 -0
- package/dist/lib/esm/obsidian/@types/Dataview/main.d.mts +52 -0
- package/dist/lib/esm/obsidian/@types/Dataview/query/engine.d.mts +103 -0
- package/dist/lib/esm/obsidian/@types/Dataview/query/parse.d.mts +44 -0
- package/dist/lib/esm/obsidian/@types/Dataview/query/query.d.mts +95 -0
- package/dist/lib/esm/obsidian/@types/Dataview/settings.d.mts +60 -0
- package/dist/lib/esm/obsidian/@types/Dataview/typings/obsidian-ex.d.mts +28 -0
- package/dist/lib/esm/obsidian/@types/Dataview/typings/workers.d.mts +4 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/export/markdown.d.mts +15 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/lp-render.d.mts +37 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/markdown.d.mts +86 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/refreshable-view.d.mts +18 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/render.d.mts +33 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/calendar-view.d.mts +17 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/inline-field-live-preview.d.mts +42 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/inline-view.d.mts +28 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/js-view.d.mts +23 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/list-view.d.mts +25 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/table-view.d.mts +28 -0
- package/dist/lib/esm/obsidian/@types/Dataview/ui/views/task-view.d.mts +51 -0
- package/dist/lib/esm/obsidian/@types/Dataview/util/hash.d.mts +1 -0
- package/dist/lib/esm/obsidian/@types/Dataview/util/locale.d.mts +2 -0
- package/dist/lib/esm/obsidian/@types/Dataview/util/media.d.mts +6 -0
- package/dist/lib/esm/obsidian/@types/Dataview/util/normalize.d.mts +44 -0
- package/dist/lib/esm/obsidian/App.d.mts +30 -0
- package/dist/lib/esm/obsidian/App.mjs +33 -0
- package/dist/lib/esm/obsidian/AttachmentPath.d.mts +54 -0
- package/dist/lib/esm/obsidian/AttachmentPath.mjs +82 -0
- package/dist/lib/esm/obsidian/Backlink.d.mts +60 -0
- package/dist/lib/esm/obsidian/Backlink.mjs +88 -0
- package/dist/lib/esm/obsidian/Callout.d.mts +55 -0
- package/dist/lib/esm/obsidian/Callout.mjs +71 -0
- package/dist/lib/esm/obsidian/Components/DateComponent.d.mts +36 -0
- package/dist/lib/esm/obsidian/Components/DateComponent.mjs +43 -0
- package/dist/lib/esm/obsidian/Components/DateTimeComponent.d.mts +36 -0
- package/dist/lib/esm/obsidian/Components/DateTimeComponent.mjs +43 -0
- package/dist/lib/esm/obsidian/Components/EmailComponent.d.mts +29 -0
- package/dist/lib/esm/obsidian/Components/EmailComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/FileComponent.d.mts +41 -0
- package/dist/lib/esm/obsidian/Components/FileComponent.mjs +48 -0
- package/dist/lib/esm/obsidian/Components/MonthComponent.d.mts +49 -0
- package/dist/lib/esm/obsidian/Components/MonthComponent.mjs +51 -0
- package/dist/lib/esm/obsidian/Components/MultipleDropdownComponent.d.mts +73 -0
- package/dist/lib/esm/obsidian/Components/MultipleDropdownComponent.mjs +99 -0
- package/dist/lib/esm/obsidian/Components/MultipleEmailComponent.d.mts +36 -0
- package/dist/lib/esm/obsidian/Components/MultipleEmailComponent.mjs +42 -0
- package/dist/lib/esm/obsidian/Components/MultipleFileComponent.d.mts +41 -0
- package/dist/lib/esm/obsidian/Components/MultipleFileComponent.mjs +49 -0
- package/dist/lib/esm/obsidian/Components/MultipleTextComponent.d.mts +67 -0
- package/dist/lib/esm/obsidian/Components/MultipleTextComponent.mjs +87 -0
- package/dist/lib/esm/obsidian/Components/NumberComponent.d.mts +29 -0
- package/dist/lib/esm/obsidian/Components/NumberComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/TimeComponent.d.mts +37 -0
- package/dist/lib/esm/obsidian/Components/TimeComponent.mjs +53 -0
- package/dist/lib/esm/obsidian/Components/TypedRangeTextComponent.d.mts +31 -0
- package/dist/lib/esm/obsidian/Components/TypedRangeTextComponent.mjs +44 -0
- package/dist/lib/esm/obsidian/Components/TypedTextComponent.d.mts +84 -0
- package/dist/lib/esm/obsidian/Components/TypedTextComponent.mjs +108 -0
- package/dist/lib/esm/obsidian/Components/UrlComponent.d.mts +29 -0
- package/dist/lib/esm/obsidian/Components/UrlComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/ValidatorComponent.d.mts +22 -0
- package/dist/lib/esm/obsidian/Components/ValidatorComponent.mjs +52 -0
- package/dist/lib/esm/obsidian/Components/ValueComponentWithChangeTracking.d.mts +17 -0
- package/dist/lib/esm/obsidian/Components/ValueComponentWithChangeTracking.mjs +9 -0
- package/dist/lib/esm/obsidian/Components/WeekComponent.d.mts +49 -0
- package/dist/lib/esm/obsidian/Components/WeekComponent.mjs +51 -0
- package/dist/lib/esm/obsidian/Components/index.d.mts +17 -0
- package/dist/lib/esm/obsidian/Components/index.mjs +44 -0
- package/dist/lib/esm/obsidian/Dataview.d.mts +215 -0
- package/dist/lib/esm/obsidian/Dataview.mjs +232 -0
- package/dist/lib/esm/obsidian/DataviewLink.d.mts +23 -0
- package/dist/lib/esm/obsidian/DataviewLink.mjs +27 -0
- package/dist/lib/esm/obsidian/FileChange.d.mts +68 -0
- package/dist/lib/esm/obsidian/FileChange.mjs +123 -0
- package/dist/lib/esm/obsidian/FileManager.d.mts +38 -0
- package/dist/lib/esm/obsidian/FileManager.mjs +66 -0
- package/dist/lib/esm/obsidian/FileSystem.d.mts +185 -0
- package/dist/lib/esm/obsidian/FileSystem.mjs +197 -0
- package/dist/lib/esm/obsidian/Frontmatter.d.mts +69 -0
- package/dist/lib/esm/obsidian/Frontmatter.mjs +32 -0
- package/dist/lib/esm/obsidian/Link.d.mts +366 -0
- package/dist/lib/esm/obsidian/Link.mjs +415 -0
- package/dist/lib/esm/obsidian/Logger.d.mts +13 -0
- package/dist/lib/esm/obsidian/Logger.mjs +45 -0
- package/dist/lib/esm/obsidian/Loop.d.mts +36 -0
- package/dist/lib/esm/obsidian/Loop.mjs +39 -0
- package/dist/lib/esm/obsidian/Markdown.d.mts +24 -0
- package/dist/lib/esm/obsidian/Markdown.mjs +40 -0
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.d.mts +23 -0
- package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +44 -0
- package/dist/lib/esm/obsidian/MarkdownView.d.mts +12 -0
- package/dist/lib/esm/obsidian/MarkdownView.mjs +21 -0
- package/dist/lib/esm/obsidian/MetadataCache.d.mts +87 -0
- package/dist/lib/esm/obsidian/MetadataCache.mjs +219 -0
- package/dist/lib/esm/obsidian/Modals/Alert.d.mts +39 -0
- package/dist/lib/esm/obsidian/Modals/Alert.mjs +46 -0
- package/dist/lib/esm/obsidian/Modals/Confirm.d.mts +43 -0
- package/dist/lib/esm/obsidian/Modals/Confirm.mjs +55 -0
- package/dist/lib/esm/obsidian/Modals/ModalBase.d.mts +35 -0
- package/dist/lib/esm/obsidian/Modals/ModalBase.mjs +31 -0
- package/dist/lib/esm/obsidian/Modals/Prompt.d.mts +50 -0
- package/dist/lib/esm/obsidian/Modals/Prompt.mjs +96 -0
- package/dist/lib/esm/obsidian/Modals/SelectItem.d.mts +41 -0
- package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +52 -0
- package/dist/lib/esm/obsidian/Modals/index.d.mts +5 -0
- package/dist/lib/esm/obsidian/Modals/index.mjs +20 -0
- package/dist/lib/esm/obsidian/ObsidianSettings.d.mts +17 -0
- package/dist/lib/esm/obsidian/ObsidianSettings.mjs +18 -0
- package/dist/lib/esm/obsidian/Pdf.d.mts +24 -0
- package/dist/lib/esm/obsidian/Pdf.mjs +42 -0
- package/dist/lib/esm/obsidian/Plugin/EmptySettings.d.mts +14 -0
- package/dist/lib/esm/obsidian/Plugin/EmptySettings.mjs +14 -0
- package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +53 -0
- package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +36 -0
- package/dist/lib/esm/obsidian/Plugin/Plugin.d.mts +21 -0
- package/dist/lib/esm/obsidian/Plugin/Plugin.mjs +28 -0
- package/dist/lib/esm/obsidian/Plugin/PluginBase.d.mts +108 -0
- package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +148 -0
- package/dist/lib/esm/obsidian/Plugin/PluginContext.d.mts +12 -0
- package/dist/lib/esm/obsidian/Plugin/PluginContext.mjs +45 -0
- package/dist/lib/esm/obsidian/Plugin/PluginId.d.mts +20 -0
- package/dist/lib/esm/obsidian/Plugin/PluginId.mjs +23 -0
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsBase.d.mts +31 -0
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsBase.mjs +69 -0
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +99 -0
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +101 -0
- package/dist/lib/esm/obsidian/Plugin/index.d.mts +8 -0
- package/dist/lib/esm/obsidian/Plugin/index.mjs +26 -0
- package/dist/lib/esm/obsidian/Queue.d.mts +30 -0
- package/dist/lib/esm/obsidian/Queue.mjs +50 -0
- package/dist/lib/esm/obsidian/Reference.d.mts +21 -0
- package/dist/lib/esm/obsidian/Reference.mjs +45 -0
- package/dist/lib/esm/obsidian/RenameDeleteHandler.d.mts +49 -0
- package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +436 -0
- package/dist/lib/esm/obsidian/ResourceUrl.d.mts +14 -0
- package/dist/lib/esm/obsidian/ResourceUrl.mjs +19 -0
- package/dist/lib/esm/obsidian/SettingEx.d.mts +124 -0
- package/dist/lib/esm/obsidian/SettingEx.mjs +158 -0
- package/dist/lib/esm/obsidian/Vault.d.mts +130 -0
- package/dist/lib/esm/obsidian/Vault.mjs +248 -0
- package/dist/lib/esm/obsidian/VaultEx.d.mts +27 -0
- package/dist/lib/esm/obsidian/VaultEx.mjs +71 -0
- package/dist/lib/esm/obsidian/index.d.mts +29 -0
- package/dist/lib/esm/obsidian/index.mjs +68 -0
- package/dist/lib/esm/url.d.mts +11 -0
- package/dist/lib/esm/url.mjs +25 -0
- package/obsidian/@types/Dataview/api/data-array/package.json +1 -1
- package/obsidian/@types/Dataview/api/extensions/package.json +1 -1
- package/obsidian/@types/Dataview/api/inline-api/package.json +1 -1
- package/obsidian/@types/Dataview/api/plugin-api/package.json +1 -1
- package/obsidian/@types/Dataview/api/result/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/common/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/csv/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/inline-field/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/markdown-file/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/persister/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/web-worker/import-entry/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/web-worker/import-impl/package.json +1 -1
- package/obsidian/@types/Dataview/data-import/web-worker/import-manager/package.json +1 -1
- package/obsidian/@types/Dataview/data-index/index/package.json +1 -1
- package/obsidian/@types/Dataview/data-index/package.json +1 -1
- package/obsidian/@types/Dataview/data-index/resolver/package.json +1 -1
- package/obsidian/@types/Dataview/data-index/source/package.json +1 -1
- package/obsidian/@types/Dataview/data-model/markdown/package.json +1 -1
- package/obsidian/@types/Dataview/data-model/serialized/markdown/package.json +1 -1
- package/obsidian/@types/Dataview/data-model/transferable/package.json +1 -1
- package/obsidian/@types/Dataview/data-model/value/package.json +1 -1
- package/obsidian/@types/Dataview/expression/binaryop/package.json +1 -1
- package/obsidian/@types/Dataview/expression/context/package.json +1 -1
- package/obsidian/@types/Dataview/expression/field/package.json +1 -1
- package/obsidian/@types/Dataview/expression/functions/package.json +1 -1
- package/obsidian/@types/Dataview/expression/parse/package.json +1 -1
- package/obsidian/@types/Dataview/index/package.json +1 -1
- package/obsidian/@types/Dataview/main/package.json +1 -1
- package/obsidian/@types/Dataview/package.json +1 -1
- package/obsidian/@types/Dataview/query/engine/package.json +1 -1
- package/obsidian/@types/Dataview/query/parse/package.json +1 -1
- package/obsidian/@types/Dataview/query/query/package.json +1 -1
- package/obsidian/@types/Dataview/settings/package.json +1 -1
- package/obsidian/@types/Dataview/typings/obsidian-ex/package.json +1 -1
- package/obsidian/@types/Dataview/typings/workers/package.json +1 -1
- package/obsidian/@types/Dataview/ui/export/markdown/package.json +1 -1
- package/obsidian/@types/Dataview/ui/lp-render/package.json +1 -1
- package/obsidian/@types/Dataview/ui/markdown/package.json +1 -1
- package/obsidian/@types/Dataview/ui/refreshable-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/render/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/calendar-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/inline-field-live-preview/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/inline-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/js-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/list-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/table-view/package.json +1 -1
- package/obsidian/@types/Dataview/ui/views/task-view/package.json +1 -1
- package/obsidian/@types/Dataview/util/hash/package.json +1 -1
- package/obsidian/@types/Dataview/util/locale/package.json +1 -1
- package/obsidian/@types/Dataview/util/media/package.json +1 -1
- package/obsidian/@types/Dataview/util/normalize/package.json +1 -1
- package/obsidian/App/package.json +3 -3
- package/obsidian/AttachmentPath/package.json +3 -3
- package/obsidian/Backlink/package.json +3 -3
- package/obsidian/Callout/package.json +3 -3
- package/obsidian/Components/DateComponent/package.json +3 -3
- package/obsidian/Components/DateTimeComponent/package.json +3 -3
- package/obsidian/Components/EmailComponent/package.json +3 -3
- package/obsidian/Components/FileComponent/package.json +3 -3
- package/obsidian/Components/MonthComponent/package.json +3 -3
- package/obsidian/Components/MultipleDropdownComponent/package.json +3 -3
- package/obsidian/Components/MultipleEmailComponent/package.json +3 -3
- package/obsidian/Components/MultipleFileComponent/package.json +3 -3
- package/obsidian/Components/MultipleTextComponent/package.json +3 -3
- package/obsidian/Components/NumberComponent/package.json +3 -3
- package/obsidian/Components/TimeComponent/package.json +3 -3
- package/obsidian/Components/TypedRangeTextComponent/package.json +3 -3
- package/obsidian/Components/TypedTextComponent/package.json +3 -3
- package/obsidian/Components/UrlComponent/package.json +3 -3
- package/obsidian/Components/ValidatorComponent/package.json +3 -3
- package/obsidian/Components/ValueComponentWithChangeTracking/package.json +3 -3
- package/obsidian/Components/WeekComponent/package.json +3 -3
- package/obsidian/Components/index/package.json +3 -3
- package/obsidian/Components/package.json +3 -3
- package/obsidian/Dataview/package.json +3 -3
- package/obsidian/DataviewLink/package.json +3 -3
- package/obsidian/FileChange/package.json +3 -3
- package/obsidian/FileManager/package.json +3 -3
- package/obsidian/FileSystem/package.json +3 -3
- package/obsidian/Frontmatter/package.json +3 -3
- package/obsidian/Link/package.json +3 -3
- package/obsidian/Logger/package.json +3 -3
- package/obsidian/Loop/package.json +3 -3
- package/obsidian/Markdown/package.json +3 -3
- package/obsidian/MarkdownCodeBlockProcessor/package.json +3 -3
- package/obsidian/MarkdownView/package.json +3 -3
- package/obsidian/MetadataCache/package.json +3 -3
- package/obsidian/Modals/Alert/package.json +3 -3
- package/obsidian/Modals/Confirm/package.json +3 -3
- package/obsidian/Modals/ModalBase/package.json +3 -3
- package/obsidian/Modals/Prompt/package.json +3 -3
- package/obsidian/Modals/SelectItem/package.json +3 -3
- package/obsidian/Modals/index/package.json +3 -3
- package/obsidian/Modals/package.json +3 -3
- package/obsidian/ObsidianSettings/package.json +3 -3
- package/obsidian/Pdf/package.json +3 -3
- package/obsidian/Plugin/EmptySettings/package.json +3 -3
- package/obsidian/Plugin/ObsidianPluginRepoPaths/package.json +3 -3
- package/obsidian/Plugin/Plugin/package.json +3 -3
- package/obsidian/Plugin/PluginBase/package.json +3 -3
- package/obsidian/Plugin/PluginContext/package.json +3 -3
- package/obsidian/Plugin/PluginId/package.json +3 -3
- package/obsidian/Plugin/PluginSettingsBase/package.json +3 -3
- package/obsidian/Plugin/PluginSettingsTabBase/package.json +3 -3
- package/obsidian/Plugin/index/package.json +3 -3
- package/obsidian/Plugin/package.json +3 -3
- package/obsidian/Queue/package.json +3 -3
- package/obsidian/Reference/package.json +3 -3
- package/obsidian/RenameDeleteHandler/package.json +3 -3
- package/obsidian/ResourceUrl/package.json +3 -3
- package/obsidian/SettingEx/package.json +3 -3
- package/obsidian/Vault/package.json +3 -3
- package/obsidian/VaultEx/package.json +3 -3
- package/obsidian/index/package.json +3 -3
- package/obsidian/package.json +3 -3
- package/package.json +241 -163
- package/Async/package.json +0 -6
- package/Blob/package.json +0 -6
- package/CssClass/package.json +0 -6
- package/Debug/package.json +0 -6
- package/DebugController/package.json +0 -6
- package/Enum/package.json +0 -6
- package/Error/package.json +0 -6
- package/Function/package.json +0 -6
- package/HTMLElement/package.json +0 -6
- package/Library/package.json +0 -6
- package/Object/package.json +0 -6
- package/Path/package.json +0 -6
- package/RegExp/package.json +0 -6
- package/String/package.json +0 -6
- package/ValueProvider/package.json +0 -6
- package/dist/lib/@types/debug.d.mts +0 -1
- package/dist/lib/Async.cjs +0 -186
- package/dist/lib/Async.d.mts +0 -1
- package/dist/lib/Async.mjs +0 -154
- package/dist/lib/Blob.cjs +0 -109
- package/dist/lib/Blob.d.mts +0 -1
- package/dist/lib/Blob.mjs +0 -81
- package/dist/lib/CssClass.cjs +0 -60
- package/dist/lib/CssClass.d.mts +0 -1
- package/dist/lib/CssClass.mjs +0 -36
- package/dist/lib/Debug.cjs +0 -169
- package/dist/lib/Debug.d.cts +0 -41
- package/dist/lib/Debug.d.mts +0 -1
- package/dist/lib/Debug.mjs +0 -137
- package/dist/lib/DebugController.cjs +0 -24
- package/dist/lib/DebugController.d.mts +0 -1
- package/dist/lib/Enum.cjs +0 -51
- package/dist/lib/Enum.d.mts +0 -1
- package/dist/lib/Enum.mjs +0 -26
- package/dist/lib/Error.cjs +0 -111
- package/dist/lib/Error.d.mts +0 -1
- package/dist/lib/Error.mjs +0 -82
- package/dist/lib/Function.cjs +0 -55
- package/dist/lib/Function.d.mts +0 -1
- package/dist/lib/Function.mjs +0 -28
- package/dist/lib/HTMLElement.cjs +0 -91
- package/dist/lib/HTMLElement.d.mts +0 -1
- package/dist/lib/HTMLElement.mjs +0 -65
- package/dist/lib/Library.cjs +0 -42
- package/dist/lib/Library.d.mts +0 -1
- package/dist/lib/Library.mjs +0 -16
- package/dist/lib/Object.cjs +0 -305
- package/dist/lib/Object.d.mts +0 -1
- package/dist/lib/Object.mjs +0 -273
- package/dist/lib/Path.cjs +0 -125
- package/dist/lib/Path.d.mts +0 -1
- package/dist/lib/Path.mjs +0 -76
- package/dist/lib/RegExp.cjs +0 -48
- package/dist/lib/RegExp.d.mts +0 -1
- package/dist/lib/RegExp.mjs +0 -23
- package/dist/lib/ScriptUtils/CliUtils.cjs +0 -161
- package/dist/lib/ScriptUtils/CliUtils.d.cts +0 -70
- package/dist/lib/ScriptUtils/CliUtils.d.mts +0 -1
- package/dist/lib/ScriptUtils/CliUtils.mjs +0 -135
- package/dist/lib/ScriptUtils/CodeGenerator.cjs +0 -43
- package/dist/lib/ScriptUtils/CodeGenerator.d.mts +0 -1
- package/dist/lib/ScriptUtils/CodeGenerator.mjs +0 -19
- package/dist/lib/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/ESLint.cjs +0 -46
- package/dist/lib/ScriptUtils/ESLint/ESLint.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/ESLint.mjs +0 -28
- package/dist/lib/ScriptUtils/ESLint/eslint.config.cjs +0 -328
- package/dist/lib/ScriptUtils/ESLint/eslint.config.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/eslint.config.mjs +0 -294
- package/dist/lib/ScriptUtils/ESLint/index.cjs +0 -49
- package/dist/lib/ScriptUtils/ESLint/index.d.cts +0 -2
- package/dist/lib/ScriptUtils/ESLint/index.d.mts +0 -1
- package/dist/lib/ScriptUtils/ESLint/index.mjs +0 -14
- package/dist/lib/ScriptUtils/Exec.cjs +0 -119
- package/dist/lib/ScriptUtils/Exec.d.mts +0 -1
- package/dist/lib/ScriptUtils/Exec.mjs +0 -98
- package/dist/lib/ScriptUtils/Fs.cjs +0 -85
- package/dist/lib/ScriptUtils/Fs.d.cts +0 -72
- package/dist/lib/ScriptUtils/Fs.d.mts +0 -1
- package/dist/lib/ScriptUtils/Fs.mjs +0 -64
- package/dist/lib/ScriptUtils/JSON.cjs +0 -83
- package/dist/lib/ScriptUtils/JSON.d.cts +0 -64
- package/dist/lib/ScriptUtils/JSON.d.mts +0 -1
- package/dist/lib/ScriptUtils/JSON.mjs +0 -60
- package/dist/lib/ScriptUtils/NodeModules.cjs +0 -95
- package/dist/lib/ScriptUtils/NodeModules.d.mts +0 -1
- package/dist/lib/ScriptUtils/NodeModules.mjs +0 -62
- package/dist/lib/ScriptUtils/Npm.cjs +0 -138
- package/dist/lib/ScriptUtils/Npm.d.cts +0 -151
- package/dist/lib/ScriptUtils/Npm.d.mts +0 -1
- package/dist/lib/ScriptUtils/Npm.mjs +0 -106
- package/dist/lib/ScriptUtils/NpmPublish.cjs +0 -45
- package/dist/lib/ScriptUtils/NpmPublish.d.mts +0 -1
- package/dist/lib/ScriptUtils/NpmPublish.mjs +0 -21
- package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +0 -77
- package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +0 -88
- package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +0 -1
- package/dist/lib/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +0 -53
- package/dist/lib/ScriptUtils/Root.cjs +0 -88
- package/dist/lib/ScriptUtils/Root.d.cts +0 -67
- package/dist/lib/ScriptUtils/Root.d.mts +0 -1
- package/dist/lib/ScriptUtils/Root.mjs +0 -66
- package/dist/lib/ScriptUtils/build.cjs +0 -82
- package/dist/lib/ScriptUtils/build.d.mts +0 -1
- package/dist/lib/ScriptUtils/build.mjs +0 -60
- package/dist/lib/ScriptUtils/cli.cjs +0 -88
- package/dist/lib/ScriptUtils/cli.d.mts +0 -1
- package/dist/lib/ScriptUtils/cli.mjs +0 -65
- package/dist/lib/ScriptUtils/esbuild/Dependency.cjs +0 -122
- package/dist/lib/ScriptUtils/esbuild/Dependency.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/Dependency.mjs +0 -95
- package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +0 -178
- package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +0 -53
- package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +0 -149
- package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.cjs +0 -68
- package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/changeExtensionPlugin.mjs +0 -44
- package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +0 -66
- package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +0 -50
- package/dist/lib/ScriptUtils/esbuild/fixEsmPlugin.cjs +0 -49
- package/dist/lib/ScriptUtils/esbuild/fixEsmPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/fixEsmPlugin.mjs +0 -25
- package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +0 -75
- package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +0 -55
- package/dist/lib/ScriptUtils/esbuild/index.cjs +0 -70
- package/dist/lib/ScriptUtils/esbuild/index.d.cts +0 -9
- package/dist/lib/ScriptUtils/esbuild/index.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/index.mjs +0 -28
- package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.cjs +0 -146
- package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/preprocessPlugin.mjs +0 -128
- package/dist/lib/ScriptUtils/esbuild/renameCssPlugin.cjs +0 -52
- package/dist/lib/ScriptUtils/esbuild/renameCssPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/renameCssPlugin.mjs +0 -31
- package/dist/lib/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +0 -75
- package/dist/lib/ScriptUtils/esbuild/svelteWrapperPlugin.d.mts +0 -1
- package/dist/lib/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +0 -41
- package/dist/lib/ScriptUtils/format.cjs +0 -69
- package/dist/lib/ScriptUtils/format.d.mts +0 -1
- package/dist/lib/ScriptUtils/format.mjs +0 -41
- package/dist/lib/ScriptUtils/index.cjs +0 -94
- package/dist/lib/ScriptUtils/index.d.cts +0 -17
- package/dist/lib/ScriptUtils/index.d.mts +0 -1
- package/dist/lib/ScriptUtils/index.mjs +0 -44
- package/dist/lib/ScriptUtils/spellcheck.cjs +0 -39
- package/dist/lib/ScriptUtils/spellcheck.d.mts +0 -1
- package/dist/lib/ScriptUtils/spellcheck.mjs +0 -15
- package/dist/lib/ScriptUtils/version.cjs +0 -389
- package/dist/lib/ScriptUtils/version.d.mts +0 -1
- package/dist/lib/ScriptUtils/version.mjs +0 -365
- package/dist/lib/String.cjs +0 -154
- package/dist/lib/String.d.cts +0 -138
- package/dist/lib/String.d.mts +0 -1
- package/dist/lib/String.mjs +0 -119
- package/dist/lib/Transformers/DateTransformer.cjs +0 -71
- package/dist/lib/Transformers/DateTransformer.d.cts +0 -35
- package/dist/lib/Transformers/DateTransformer.d.mts +0 -1
- package/dist/lib/Transformers/DateTransformer.mjs +0 -47
- package/dist/lib/Transformers/DurationTransformer.cjs +0 -71
- package/dist/lib/Transformers/DurationTransformer.d.cts +0 -34
- package/dist/lib/Transformers/DurationTransformer.d.mts +0 -1
- package/dist/lib/Transformers/DurationTransformer.mjs +0 -47
- package/dist/lib/Transformers/GroupTransformer.cjs +0 -118
- package/dist/lib/Transformers/GroupTransformer.d.cts +0 -65
- package/dist/lib/Transformers/GroupTransformer.d.mts +0 -1
- package/dist/lib/Transformers/GroupTransformer.mjs +0 -94
- package/dist/lib/Transformers/SkipPrivatePropertyTransformer.cjs +0 -69
- package/dist/lib/Transformers/SkipPrivatePropertyTransformer.d.cts +0 -32
- package/dist/lib/Transformers/SkipPrivatePropertyTransformer.d.mts +0 -1
- package/dist/lib/Transformers/SkipPrivatePropertyTransformer.mjs +0 -45
- package/dist/lib/Transformers/Transformer.cjs +0 -107
- package/dist/lib/Transformers/Transformer.d.mts +0 -1
- package/dist/lib/Transformers/Transformer.mjs +0 -83
- package/dist/lib/Transformers/TypedTransformer.cjs +0 -38
- package/dist/lib/Transformers/TypedTransformer.d.cts +0 -37
- package/dist/lib/Transformers/TypedTransformer.d.mts +0 -1
- package/dist/lib/Transformers/TypedTransformer.mjs +0 -14
- package/dist/lib/Transformers/index.cjs +0 -61
- package/dist/lib/Transformers/index.d.cts +0 -6
- package/dist/lib/Transformers/index.d.mts +0 -1
- package/dist/lib/Transformers/index.mjs +0 -22
- package/dist/lib/ValueProvider.cjs +0 -44
- package/dist/lib/ValueProvider.d.cts +0 -22
- package/dist/lib/ValueProvider.d.mts +0 -1
- package/dist/lib/ValueProvider.mjs +0 -20
- package/dist/lib/codemirror/StateFieldSpec.cjs +0 -24
- package/dist/lib/codemirror/StateFieldSpec.d.mts +0 -1
- package/dist/lib/codemirror/index.cjs +0 -46
- package/dist/lib/codemirror/index.d.cts +0 -1
- package/dist/lib/codemirror/index.d.mts +0 -1
- package/dist/lib/codemirror/index.mjs +0 -12
- package/dist/lib/index.cjs +0 -103
- package/dist/lib/index.d.cts +0 -20
- package/dist/lib/index.d.mts +0 -1
- package/dist/lib/index.mjs +0 -50
- package/dist/lib/obsidian/@types/Dataview/api/data-array.d.cts +0 -136
- package/dist/lib/obsidian/@types/Dataview/api/data-array.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/api/extensions.d.cts +0 -15
- package/dist/lib/obsidian/@types/Dataview/api/extensions.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/api/inline-api.d.cts +0 -186
- package/dist/lib/obsidian/@types/Dataview/api/inline-api.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/api/plugin-api.d.cts +0 -209
- package/dist/lib/obsidian/@types/Dataview/api/plugin-api.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/api/result.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/common.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/csv.d.cts +0 -3
- package/dist/lib/obsidian/@types/Dataview/data-import/csv.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/inline-field.d.cts +0 -42
- package/dist/lib/obsidian/@types/Dataview/data-import/inline-field.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/markdown-file.d.cts +0 -52
- package/dist/lib/obsidian/@types/Dataview/data-import/markdown-file.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/persister.d.cts +0 -32
- package/dist/lib/obsidian/@types/Dataview/data-import/persister.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-entry.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-impl.d.cts +0 -6
- package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-impl.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-import/web-worker/import-manager.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-index/index.d.cts +0 -186
- package/dist/lib/obsidian/@types/Dataview/data-index/index.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-index/resolver.d.cts +0 -23
- package/dist/lib/obsidian/@types/Dataview/data-index/resolver.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-index/source.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-model/markdown.d.cts +0 -115
- package/dist/lib/obsidian/@types/Dataview/data-model/markdown.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-model/serialized/markdown.d.cts +0 -106
- package/dist/lib/obsidian/@types/Dataview/data-model/serialized/markdown.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-model/transferable.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/data-model/value.d.cts +0 -175
- package/dist/lib/obsidian/@types/Dataview/data-model/value.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/expression/binaryop.d.cts +0 -43
- package/dist/lib/obsidian/@types/Dataview/expression/binaryop.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/expression/context.d.cts +0 -49
- package/dist/lib/obsidian/@types/Dataview/expression/context.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/expression/field.d.cts +0 -82
- package/dist/lib/obsidian/@types/Dataview/expression/field.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/expression/functions.d.cts +0 -149
- package/dist/lib/obsidian/@types/Dataview/expression/functions.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/expression/parse.d.cts +0 -163
- package/dist/lib/obsidian/@types/Dataview/expression/parse.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/index.d.cts +0 -55
- package/dist/lib/obsidian/@types/Dataview/index.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/main.d.cts +0 -52
- package/dist/lib/obsidian/@types/Dataview/main.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/query/engine.d.cts +0 -103
- package/dist/lib/obsidian/@types/Dataview/query/engine.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/query/parse.d.cts +0 -44
- package/dist/lib/obsidian/@types/Dataview/query/parse.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/query/query.d.cts +0 -95
- package/dist/lib/obsidian/@types/Dataview/query/query.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/settings.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/typings/obsidian-ex.d.cts +0 -28
- package/dist/lib/obsidian/@types/Dataview/typings/obsidian-ex.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/typings/workers.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/export/markdown.d.cts +0 -15
- package/dist/lib/obsidian/@types/Dataview/ui/export/markdown.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/lp-render.d.cts +0 -37
- package/dist/lib/obsidian/@types/Dataview/ui/lp-render.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/markdown.d.cts +0 -86
- package/dist/lib/obsidian/@types/Dataview/ui/markdown.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/refreshable-view.d.cts +0 -18
- package/dist/lib/obsidian/@types/Dataview/ui/refreshable-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/render.d.cts +0 -33
- package/dist/lib/obsidian/@types/Dataview/ui/render.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/calendar-view.d.cts +0 -17
- package/dist/lib/obsidian/@types/Dataview/ui/views/calendar-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/inline-field-live-preview.d.cts +0 -42
- package/dist/lib/obsidian/@types/Dataview/ui/views/inline-field-live-preview.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/inline-view.d.cts +0 -28
- package/dist/lib/obsidian/@types/Dataview/ui/views/inline-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/js-view.d.cts +0 -23
- package/dist/lib/obsidian/@types/Dataview/ui/views/js-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/list-view.d.cts +0 -25
- package/dist/lib/obsidian/@types/Dataview/ui/views/list-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/table-view.d.cts +0 -28
- package/dist/lib/obsidian/@types/Dataview/ui/views/table-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/ui/views/task-view.d.cts +0 -51
- package/dist/lib/obsidian/@types/Dataview/ui/views/task-view.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/util/hash.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/util/locale.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/util/media.d.cts +0 -6
- package/dist/lib/obsidian/@types/Dataview/util/media.d.mts +0 -1
- package/dist/lib/obsidian/@types/Dataview/util/normalize.d.cts +0 -44
- package/dist/lib/obsidian/@types/Dataview/util/normalize.d.mts +0 -1
- package/dist/lib/obsidian/App.cjs +0 -59
- package/dist/lib/obsidian/App.d.mts +0 -1
- package/dist/lib/obsidian/App.mjs +0 -33
- package/dist/lib/obsidian/AttachmentPath.cjs +0 -95
- package/dist/lib/obsidian/AttachmentPath.d.cts +0 -54
- package/dist/lib/obsidian/AttachmentPath.d.mts +0 -1
- package/dist/lib/obsidian/AttachmentPath.mjs +0 -82
- package/dist/lib/obsidian/Backlink.cjs +0 -110
- package/dist/lib/obsidian/Backlink.d.cts +0 -60
- package/dist/lib/obsidian/Backlink.d.mts +0 -1
- package/dist/lib/obsidian/Backlink.mjs +0 -88
- package/dist/lib/obsidian/Callout.cjs +0 -97
- package/dist/lib/obsidian/Callout.d.cts +0 -55
- package/dist/lib/obsidian/Callout.d.mts +0 -1
- package/dist/lib/obsidian/Callout.mjs +0 -71
- package/dist/lib/obsidian/Components/DateComponent.cjs +0 -77
- package/dist/lib/obsidian/Components/DateComponent.d.cts +0 -36
- package/dist/lib/obsidian/Components/DateComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/DateComponent.mjs +0 -43
- package/dist/lib/obsidian/Components/DateTimeComponent.cjs +0 -77
- package/dist/lib/obsidian/Components/DateTimeComponent.d.cts +0 -36
- package/dist/lib/obsidian/Components/DateTimeComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/DateTimeComponent.mjs +0 -43
- package/dist/lib/obsidian/Components/EmailComponent.cjs +0 -56
- package/dist/lib/obsidian/Components/EmailComponent.d.cts +0 -29
- package/dist/lib/obsidian/Components/EmailComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/EmailComponent.mjs +0 -32
- package/dist/lib/obsidian/Components/FileComponent.cjs +0 -72
- package/dist/lib/obsidian/Components/FileComponent.d.cts +0 -41
- package/dist/lib/obsidian/Components/FileComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/FileComponent.mjs +0 -48
- package/dist/lib/obsidian/Components/MonthComponent.cjs +0 -85
- package/dist/lib/obsidian/Components/MonthComponent.d.cts +0 -49
- package/dist/lib/obsidian/Components/MonthComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/MonthComponent.mjs +0 -51
- package/dist/lib/obsidian/Components/MultipleDropdownComponent.cjs +0 -120
- package/dist/lib/obsidian/Components/MultipleDropdownComponent.d.cts +0 -73
- package/dist/lib/obsidian/Components/MultipleDropdownComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/MultipleDropdownComponent.mjs +0 -99
- package/dist/lib/obsidian/Components/MultipleEmailComponent.cjs +0 -66
- package/dist/lib/obsidian/Components/MultipleEmailComponent.d.cts +0 -36
- package/dist/lib/obsidian/Components/MultipleEmailComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/MultipleEmailComponent.mjs +0 -42
- package/dist/lib/obsidian/Components/MultipleFileComponent.cjs +0 -73
- package/dist/lib/obsidian/Components/MultipleFileComponent.d.cts +0 -41
- package/dist/lib/obsidian/Components/MultipleFileComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/MultipleFileComponent.mjs +0 -49
- package/dist/lib/obsidian/Components/MultipleTextComponent.cjs +0 -108
- package/dist/lib/obsidian/Components/MultipleTextComponent.d.cts +0 -67
- package/dist/lib/obsidian/Components/MultipleTextComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/MultipleTextComponent.mjs +0 -87
- package/dist/lib/obsidian/Components/NumberComponent.cjs +0 -56
- package/dist/lib/obsidian/Components/NumberComponent.d.cts +0 -29
- package/dist/lib/obsidian/Components/NumberComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/NumberComponent.mjs +0 -32
- package/dist/lib/obsidian/Components/TimeComponent.cjs +0 -74
- package/dist/lib/obsidian/Components/TimeComponent.d.cts +0 -37
- package/dist/lib/obsidian/Components/TimeComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/TimeComponent.mjs +0 -53
- package/dist/lib/obsidian/Components/TypedRangeTextComponent.cjs +0 -68
- package/dist/lib/obsidian/Components/TypedRangeTextComponent.d.cts +0 -31
- package/dist/lib/obsidian/Components/TypedRangeTextComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/TypedRangeTextComponent.mjs +0 -44
- package/dist/lib/obsidian/Components/TypedTextComponent.cjs +0 -129
- package/dist/lib/obsidian/Components/TypedTextComponent.d.cts +0 -84
- package/dist/lib/obsidian/Components/TypedTextComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/TypedTextComponent.mjs +0 -108
- package/dist/lib/obsidian/Components/UrlComponent.cjs +0 -56
- package/dist/lib/obsidian/Components/UrlComponent.d.cts +0 -29
- package/dist/lib/obsidian/Components/UrlComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/UrlComponent.mjs +0 -32
- package/dist/lib/obsidian/Components/ValidatorComponent.cjs +0 -71
- package/dist/lib/obsidian/Components/ValidatorComponent.d.cts +0 -22
- package/dist/lib/obsidian/Components/ValidatorComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/ValidatorComponent.mjs +0 -52
- package/dist/lib/obsidian/Components/ValueComponentWithChangeTracking.cjs +0 -25
- package/dist/lib/obsidian/Components/ValueComponentWithChangeTracking.d.cts +0 -17
- package/dist/lib/obsidian/Components/ValueComponentWithChangeTracking.d.mts +0 -1
- package/dist/lib/obsidian/Components/ValueComponentWithChangeTracking.mjs +0 -9
- package/dist/lib/obsidian/Components/WeekComponent.cjs +0 -85
- package/dist/lib/obsidian/Components/WeekComponent.d.cts +0 -49
- package/dist/lib/obsidian/Components/WeekComponent.d.mts +0 -1
- package/dist/lib/obsidian/Components/WeekComponent.mjs +0 -51
- package/dist/lib/obsidian/Components/index.cjs +0 -94
- package/dist/lib/obsidian/Components/index.d.cts +0 -17
- package/dist/lib/obsidian/Components/index.d.mts +0 -1
- package/dist/lib/obsidian/Components/index.mjs +0 -44
- package/dist/lib/obsidian/Dataview.cjs +0 -255
- package/dist/lib/obsidian/Dataview.d.cts +0 -215
- package/dist/lib/obsidian/Dataview.d.mts +0 -1
- package/dist/lib/obsidian/Dataview.mjs +0 -232
- package/dist/lib/obsidian/DataviewLink.cjs +0 -48
- package/dist/lib/obsidian/DataviewLink.d.cts +0 -23
- package/dist/lib/obsidian/DataviewLink.d.mts +0 -1
- package/dist/lib/obsidian/DataviewLink.mjs +0 -27
- package/dist/lib/obsidian/FileChange.cjs +0 -139
- package/dist/lib/obsidian/FileChange.d.cts +0 -68
- package/dist/lib/obsidian/FileChange.d.mts +0 -1
- package/dist/lib/obsidian/FileChange.mjs +0 -123
- package/dist/lib/obsidian/FileManager.cjs +0 -89
- package/dist/lib/obsidian/FileManager.d.cts +0 -38
- package/dist/lib/obsidian/FileManager.d.mts +0 -1
- package/dist/lib/obsidian/FileManager.mjs +0 -66
- package/dist/lib/obsidian/FileSystem.cjs +0 -226
- package/dist/lib/obsidian/FileSystem.d.mts +0 -1
- package/dist/lib/obsidian/FileSystem.mjs +0 -197
- package/dist/lib/obsidian/Frontmatter.cjs +0 -53
- package/dist/lib/obsidian/Frontmatter.d.mts +0 -1
- package/dist/lib/obsidian/Frontmatter.mjs +0 -32
- package/dist/lib/obsidian/Link.cjs +0 -432
- package/dist/lib/obsidian/Link.d.cts +0 -366
- package/dist/lib/obsidian/Link.d.mts +0 -1
- package/dist/lib/obsidian/Link.mjs +0 -415
- package/dist/lib/obsidian/Logger.cjs +0 -69
- package/dist/lib/obsidian/Logger.d.cts +0 -13
- package/dist/lib/obsidian/Logger.d.mts +0 -1
- package/dist/lib/obsidian/Logger.mjs +0 -45
- package/dist/lib/obsidian/Loop.cjs +0 -63
- package/dist/lib/obsidian/Loop.d.cts +0 -36
- package/dist/lib/obsidian/Loop.d.mts +0 -1
- package/dist/lib/obsidian/Loop.mjs +0 -39
- package/dist/lib/obsidian/Markdown.cjs +0 -61
- package/dist/lib/obsidian/Markdown.d.mts +0 -1
- package/dist/lib/obsidian/Markdown.mjs +0 -40
- package/dist/lib/obsidian/MarkdownCodeBlockProcessor.cjs +0 -69
- package/dist/lib/obsidian/MarkdownCodeBlockProcessor.d.cts +0 -23
- package/dist/lib/obsidian/MarkdownCodeBlockProcessor.d.mts +0 -1
- package/dist/lib/obsidian/MarkdownCodeBlockProcessor.mjs +0 -44
- package/dist/lib/obsidian/MarkdownView.cjs +0 -45
- package/dist/lib/obsidian/MarkdownView.d.mts +0 -1
- package/dist/lib/obsidian/MarkdownView.mjs +0 -21
- package/dist/lib/obsidian/MetadataCache.cjs +0 -239
- package/dist/lib/obsidian/MetadataCache.d.cts +0 -87
- package/dist/lib/obsidian/MetadataCache.d.mts +0 -1
- package/dist/lib/obsidian/MetadataCache.mjs +0 -219
- package/dist/lib/obsidian/Modals/Alert.cjs +0 -67
- package/dist/lib/obsidian/Modals/Alert.d.mts +0 -1
- package/dist/lib/obsidian/Modals/Alert.mjs +0 -46
- package/dist/lib/obsidian/Modals/Confirm.cjs +0 -76
- package/dist/lib/obsidian/Modals/Confirm.d.mts +0 -1
- package/dist/lib/obsidian/Modals/Confirm.mjs +0 -55
- package/dist/lib/obsidian/Modals/ModalBase.cjs +0 -56
- package/dist/lib/obsidian/Modals/ModalBase.d.cts +0 -35
- package/dist/lib/obsidian/Modals/ModalBase.d.mts +0 -1
- package/dist/lib/obsidian/Modals/ModalBase.mjs +0 -31
- package/dist/lib/obsidian/Modals/Prompt.cjs +0 -110
- package/dist/lib/obsidian/Modals/Prompt.d.cts +0 -50
- package/dist/lib/obsidian/Modals/Prompt.d.mts +0 -1
- package/dist/lib/obsidian/Modals/Prompt.mjs +0 -96
- package/dist/lib/obsidian/Modals/SelectItem.cjs +0 -73
- package/dist/lib/obsidian/Modals/SelectItem.d.mts +0 -1
- package/dist/lib/obsidian/Modals/SelectItem.mjs +0 -52
- package/dist/lib/obsidian/Modals/index.cjs +0 -58
- package/dist/lib/obsidian/Modals/index.d.cts +0 -5
- package/dist/lib/obsidian/Modals/index.d.mts +0 -1
- package/dist/lib/obsidian/Modals/index.mjs +0 -20
- package/dist/lib/obsidian/ObsidianSettings.cjs +0 -43
- package/dist/lib/obsidian/ObsidianSettings.d.mts +0 -1
- package/dist/lib/obsidian/ObsidianSettings.mjs +0 -18
- package/dist/lib/obsidian/Pdf.cjs +0 -66
- package/dist/lib/obsidian/Pdf.d.mts +0 -1
- package/dist/lib/obsidian/Pdf.mjs +0 -42
- package/dist/lib/obsidian/Plugin/EmptySettings.cjs +0 -38
- package/dist/lib/obsidian/Plugin/EmptySettings.d.cts +0 -14
- package/dist/lib/obsidian/Plugin/EmptySettings.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/EmptySettings.mjs +0 -14
- package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +0 -61
- package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +0 -55
- package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +0 -37
- package/dist/lib/obsidian/Plugin/Plugin.cjs +0 -50
- package/dist/lib/obsidian/Plugin/Plugin.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/Plugin.mjs +0 -28
- package/dist/lib/obsidian/Plugin/PluginBase.cjs +0 -168
- package/dist/lib/obsidian/Plugin/PluginBase.d.cts +0 -108
- package/dist/lib/obsidian/Plugin/PluginBase.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/PluginBase.mjs +0 -148
- package/dist/lib/obsidian/Plugin/PluginContext.cjs +0 -62
- package/dist/lib/obsidian/Plugin/PluginContext.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/PluginContext.mjs +0 -45
- package/dist/lib/obsidian/Plugin/PluginId.cjs +0 -49
- package/dist/lib/obsidian/Plugin/PluginId.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/PluginId.mjs +0 -23
- package/dist/lib/obsidian/Plugin/PluginSettingsBase.cjs +0 -93
- package/dist/lib/obsidian/Plugin/PluginSettingsBase.d.cts +0 -31
- package/dist/lib/obsidian/Plugin/PluginSettingsBase.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/PluginSettingsBase.mjs +0 -69
- package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.cjs +0 -122
- package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.d.cts +0 -99
- package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.mjs +0 -101
- package/dist/lib/obsidian/Plugin/index.cjs +0 -67
- package/dist/lib/obsidian/Plugin/index.d.cts +0 -8
- package/dist/lib/obsidian/Plugin/index.d.mts +0 -1
- package/dist/lib/obsidian/Plugin/index.mjs +0 -26
- package/dist/lib/obsidian/Queue.cjs +0 -72
- package/dist/lib/obsidian/Queue.d.cts +0 -30
- package/dist/lib/obsidian/Queue.d.mts +0 -1
- package/dist/lib/obsidian/Queue.mjs +0 -50
- package/dist/lib/obsidian/Reference.cjs +0 -67
- package/dist/lib/obsidian/Reference.d.cts +0 -21
- package/dist/lib/obsidian/Reference.d.mts +0 -1
- package/dist/lib/obsidian/Reference.mjs +0 -45
- package/dist/lib/obsidian/RenameDeleteHandler.cjs +0 -421
- package/dist/lib/obsidian/RenameDeleteHandler.d.mts +0 -1
- package/dist/lib/obsidian/RenameDeleteHandler.mjs +0 -436
- package/dist/lib/obsidian/ResourceUrl.cjs +0 -43
- package/dist/lib/obsidian/ResourceUrl.d.mts +0 -1
- package/dist/lib/obsidian/ResourceUrl.mjs +0 -19
- package/dist/lib/obsidian/SettingEx.cjs +0 -182
- package/dist/lib/obsidian/SettingEx.d.cts +0 -124
- package/dist/lib/obsidian/SettingEx.d.mts +0 -1
- package/dist/lib/obsidian/SettingEx.mjs +0 -158
- package/dist/lib/obsidian/Vault.cjs +0 -268
- package/dist/lib/obsidian/Vault.d.cts +0 -130
- package/dist/lib/obsidian/Vault.d.mts +0 -1
- package/dist/lib/obsidian/Vault.mjs +0 -248
- package/dist/lib/obsidian/VaultEx.cjs +0 -88
- package/dist/lib/obsidian/VaultEx.d.cts +0 -27
- package/dist/lib/obsidian/VaultEx.d.mts +0 -1
- package/dist/lib/obsidian/VaultEx.mjs +0 -71
- package/dist/lib/obsidian/index.cjs +0 -130
- package/dist/lib/obsidian/index.d.cts +0 -29
- package/dist/lib/obsidian/index.d.mts +0 -1
- package/dist/lib/obsidian/index.mjs +0 -68
- package/dist/lib/url.cjs +0 -49
- package/dist/lib/url.d.mts +0 -1
- package/dist/lib/url.mjs +0 -25
- package/index/package.json +0 -6
- package/url/package.json +0 -6
- /package/dist/lib/{@types → cjs/@types}/debug.d.cts +0 -0
- /package/dist/lib/{Async.d.cts → cjs/Async.d.cts} +0 -0
- /package/dist/lib/{Blob.d.cts → cjs/Blob.d.cts} +0 -0
- /package/dist/lib/{CssClass.d.cts → cjs/CssClass.d.cts} +0 -0
- /package/dist/lib/{DebugController.d.cts → cjs/DebugController.d.cts} +0 -0
- /package/dist/lib/{Enum.d.cts → cjs/Enum.d.cts} +0 -0
- /package/dist/lib/{Error.d.cts → cjs/Error.d.cts} +0 -0
- /package/dist/lib/{Function.d.cts → cjs/Function.d.cts} +0 -0
- /package/dist/lib/{HTMLElement.d.cts → cjs/HTMLElement.d.cts} +0 -0
- /package/dist/lib/{Library.d.cts → cjs/Library.d.cts} +0 -0
- /package/dist/lib/{Object.d.cts → cjs/Object.d.cts} +0 -0
- /package/dist/lib/{Path.d.cts → cjs/Path.d.cts} +0 -0
- /package/dist/lib/{RegExp.d.cts → cjs/RegExp.d.cts} +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/CodeGenerator.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/ESLint/@types/eslint-plugin-modules-newlines.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/ESLint/@types/eslint-plugin-verify-tsdoc.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/ESLint/ESLint.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/ESLint/eslint.config.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/Exec.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/NodeModules.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/NpmPublish.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/build.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/cli.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/Dependency.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/changeExtensionPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/copyToObsidianPluginsFolderPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/fixEsmPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/fixSourceMapsPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/preprocessPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/renameCssPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/esbuild/svelteWrapperPlugin.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/format.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/spellcheck.d.cts +0 -0
- /package/dist/lib/{ScriptUtils → cjs/ScriptUtils}/version.d.cts +0 -0
- /package/dist/lib/{Transformers → cjs/Transformers}/Transformer.d.cts +0 -0
- /package/dist/lib/{codemirror → cjs/codemirror}/StateFieldSpec.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/api/result.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/data-import/common.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/data-import/web-worker/import-entry.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/data-import/web-worker/import-manager.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/data-index/source.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/data-model/transferable.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/settings.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/typings/workers.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/util/hash.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/@types/Dataview/util/locale.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/App.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/FileSystem.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Frontmatter.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Markdown.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/MarkdownView.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Modals/Alert.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Modals/Confirm.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Modals/SelectItem.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/ObsidianSettings.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Pdf.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Plugin/Plugin.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Plugin/PluginContext.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/Plugin/PluginId.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/RenameDeleteHandler.d.cts +0 -0
- /package/dist/lib/{obsidian → cjs/obsidian}/ResourceUrl.d.cts +0 -0
- /package/dist/lib/{url.d.cts → cjs/url.d.cts} +0 -0
- /package/dist/lib/{DebugController.mjs → esm/DebugController.mjs} +0 -0
- /package/dist/lib/{codemirror → esm/codemirror}/StateFieldSpec.mjs +0 -0
@@ -1,239 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
-
if you want to view the source, please visit the github repository of this plugin
|
4
|
-
*/
|
5
|
-
|
6
|
-
(function initCjs(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;const originalRequire=require;if(originalRequire&&!originalRequire.__isPatched){require=Object.assign(id=>requirePatched(id),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>{const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};return browserProcess},"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id){const module=originalRequire?.(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})();
|
7
|
-
|
8
|
-
"use strict";
|
9
|
-
var __defProp = Object.defineProperty;
|
10
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
11
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
12
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
13
|
-
var __export = (target, all) => {
|
14
|
-
for (var name in all)
|
15
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
16
|
-
};
|
17
|
-
var __copyProps = (to, from, except, desc) => {
|
18
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
19
|
-
for (let key of __getOwnPropNames(from))
|
20
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
21
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
22
|
-
}
|
23
|
-
return to;
|
24
|
-
};
|
25
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
26
|
-
var MetadataCache_exports = {};
|
27
|
-
__export(MetadataCache_exports, {
|
28
|
-
ensureMetadataCacheReady: () => ensureMetadataCacheReady,
|
29
|
-
getAllLinks: () => getAllLinks,
|
30
|
-
getBacklinksForFileOrPath: () => getBacklinksForFileOrPath,
|
31
|
-
getBacklinksForFileSafe: () => getBacklinksForFileSafe,
|
32
|
-
getCacheSafe: () => getCacheSafe,
|
33
|
-
getFrontmatterSafe: () => getFrontmatterSafe,
|
34
|
-
registerFile: () => registerFile,
|
35
|
-
tempRegisterFileAndRun: () => tempRegisterFileAndRun
|
36
|
-
});
|
37
|
-
module.exports = __toCommonJS(MetadataCache_exports);
|
38
|
-
var import_obsidian = require('obsidian');
|
39
|
-
var import_implementations = require('obsidian-typings/implementations');
|
40
|
-
var import_Async = require('../Async.cjs');
|
41
|
-
var import_Debug = require('../Debug.cjs');
|
42
|
-
var import_Function = require('../Function.cjs');
|
43
|
-
var import_Object = require('../Object.cjs');
|
44
|
-
var import_FileSystem = require('./FileSystem.cjs');
|
45
|
-
var import_Frontmatter = require('./Frontmatter.cjs');
|
46
|
-
var import_Reference = require('./Reference.cjs');
|
47
|
-
var import_Vault = require('./Vault.cjs');
|
48
|
-
async function ensureMetadataCacheReady(app) {
|
49
|
-
for (const [path, cache] of Object.entries(app.metadataCache.fileCache)) {
|
50
|
-
if (!cache.hash) {
|
51
|
-
continue;
|
52
|
-
}
|
53
|
-
if (app.metadataCache.metadataCache[cache.hash]) {
|
54
|
-
continue;
|
55
|
-
}
|
56
|
-
await getCacheSafe(app, path);
|
57
|
-
}
|
58
|
-
}
|
59
|
-
function getAllLinks(cache) {
|
60
|
-
let links = [];
|
61
|
-
if (cache.links) {
|
62
|
-
links.push(...cache.links);
|
63
|
-
}
|
64
|
-
if (cache.embeds) {
|
65
|
-
links.push(...cache.embeds);
|
66
|
-
}
|
67
|
-
if (cache.frontmatterLinks) {
|
68
|
-
links.push(...cache.frontmatterLinks);
|
69
|
-
}
|
70
|
-
(0, import_Reference.sortReferences)(links);
|
71
|
-
links = links.filter((link, index) => {
|
72
|
-
if (index === 0) {
|
73
|
-
return true;
|
74
|
-
}
|
75
|
-
const previousLink = links[index - 1];
|
76
|
-
if (!previousLink) {
|
77
|
-
return true;
|
78
|
-
}
|
79
|
-
if ((0, import_implementations.isReferenceCache)(link) && (0, import_implementations.isReferenceCache)(previousLink)) {
|
80
|
-
return link.position.start.offset !== previousLink.position.start.offset;
|
81
|
-
}
|
82
|
-
if ((0, import_implementations.isFrontmatterLinkCache)(link) && (0, import_implementations.isFrontmatterLinkCache)(previousLink)) {
|
83
|
-
return link.key !== previousLink.key;
|
84
|
-
}
|
85
|
-
return true;
|
86
|
-
});
|
87
|
-
return links;
|
88
|
-
}
|
89
|
-
function getBacklinksForFileOrPath(app, pathOrFile) {
|
90
|
-
const file = (0, import_FileSystem.getFile)(app, pathOrFile, true);
|
91
|
-
return tempRegisterFileAndRun(app, file, () => app.metadataCache.getBacklinksForFile(file));
|
92
|
-
}
|
93
|
-
async function getBacklinksForFileSafe(app, pathOrFile, retryOptions = {}) {
|
94
|
-
const safeOverload = app.metadataCache.getBacklinksForFile.safe;
|
95
|
-
if (safeOverload) {
|
96
|
-
return safeOverload(pathOrFile);
|
97
|
-
}
|
98
|
-
let backlinks = null;
|
99
|
-
await (0, import_Async.retryWithTimeout)(async () => {
|
100
|
-
const file = (0, import_FileSystem.getFile)(app, pathOrFile);
|
101
|
-
await ensureMetadataCacheReady(app);
|
102
|
-
backlinks = getBacklinksForFileOrPath(app, file);
|
103
|
-
for (const notePath of backlinks.keys()) {
|
104
|
-
const note = (0, import_FileSystem.getFileOrNull)(app, notePath);
|
105
|
-
if (!note) {
|
106
|
-
return false;
|
107
|
-
}
|
108
|
-
await saveNote(app, note);
|
109
|
-
const content = await (0, import_Vault.readSafe)(app, note);
|
110
|
-
if (!content) {
|
111
|
-
return false;
|
112
|
-
}
|
113
|
-
const frontmatter = (0, import_Frontmatter.parseFrontmatter)(content);
|
114
|
-
const links = backlinks.get(notePath);
|
115
|
-
if (!links) {
|
116
|
-
return false;
|
117
|
-
}
|
118
|
-
for (const link of links) {
|
119
|
-
let actualLink;
|
120
|
-
if ((0, import_implementations.isReferenceCache)(link)) {
|
121
|
-
actualLink = content.slice(link.position.start.offset, link.position.end.offset);
|
122
|
-
} else if ((0, import_implementations.isFrontmatterLinkCache)(link)) {
|
123
|
-
const linkValue = (0, import_Object.getNestedPropertyValue)(frontmatter, link.key);
|
124
|
-
if (typeof linkValue !== "string") {
|
125
|
-
return false;
|
126
|
-
}
|
127
|
-
actualLink = linkValue;
|
128
|
-
} else {
|
129
|
-
return true;
|
130
|
-
}
|
131
|
-
if (actualLink !== link.original) {
|
132
|
-
return false;
|
133
|
-
}
|
134
|
-
}
|
135
|
-
}
|
136
|
-
return true;
|
137
|
-
}, retryOptions);
|
138
|
-
return backlinks;
|
139
|
-
}
|
140
|
-
async function getCacheSafe(app, fileOrPath, retryOptions = {}) {
|
141
|
-
const _debugger = (0, import_Debug.getLibDebugger)("MetadataCache:getCacheSafe");
|
142
|
-
let cache = null;
|
143
|
-
await (0, import_Async.retryWithTimeout)(async () => {
|
144
|
-
const file = (0, import_FileSystem.getFileOrNull)(app, fileOrPath);
|
145
|
-
if (!file || file.deleted) {
|
146
|
-
cache = null;
|
147
|
-
return true;
|
148
|
-
}
|
149
|
-
await saveNote(app, file);
|
150
|
-
const fileInfo = app.metadataCache.getFileInfo(file.path);
|
151
|
-
const stat = await app.vault.adapter.stat(file.path);
|
152
|
-
if (!fileInfo) {
|
153
|
-
_debugger(`File cache info for ${file.path} is missing`);
|
154
|
-
return false;
|
155
|
-
}
|
156
|
-
if (!stat) {
|
157
|
-
_debugger(`File stat for ${file.path} is missing`);
|
158
|
-
return false;
|
159
|
-
}
|
160
|
-
if (file.stat.mtime < stat.mtime) {
|
161
|
-
app.vault.onChange("modified", file.path, void 0, stat);
|
162
|
-
_debugger(
|
163
|
-
`Cached timestamp for ${file.path} is from ${new Date(file.stat.mtime).toString()} which is older than the file system modification timestamp ${new Date(stat.mtime).toString()}`
|
164
|
-
);
|
165
|
-
return false;
|
166
|
-
}
|
167
|
-
if (fileInfo.mtime < stat.mtime) {
|
168
|
-
_debugger(
|
169
|
-
`File cache info for ${file.path} is from ${new Date(fileInfo.mtime).toString()} which is older than the file modification timestamp ${new Date(stat.mtime).toString()}`
|
170
|
-
);
|
171
|
-
return false;
|
172
|
-
}
|
173
|
-
cache = app.metadataCache.getFileCache(file);
|
174
|
-
if (!cache) {
|
175
|
-
_debugger(`File cache for ${file.path} is missing`);
|
176
|
-
return false;
|
177
|
-
}
|
178
|
-
return true;
|
179
|
-
}, retryOptions);
|
180
|
-
return cache;
|
181
|
-
}
|
182
|
-
async function getFrontmatterSafe(app, pathOrFile) {
|
183
|
-
const cache = await getCacheSafe(app, pathOrFile);
|
184
|
-
return cache?.frontmatter ?? {};
|
185
|
-
}
|
186
|
-
function registerFile(app, file) {
|
187
|
-
if (!file.deleted) {
|
188
|
-
return import_Function.noop;
|
189
|
-
}
|
190
|
-
const deletedPaths = [];
|
191
|
-
let deletedFile = file;
|
192
|
-
while (deletedFile.deleted) {
|
193
|
-
deletedPaths.push(deletedFile.path);
|
194
|
-
app.vault.fileMap[deletedFile.path] = deletedFile;
|
195
|
-
deletedFile = deletedFile.parent ?? (0, import_FileSystem.getFolder)(app, (0, import_implementations.parentFolderPath)(deletedFile.path), true);
|
196
|
-
}
|
197
|
-
if ((0, import_FileSystem.isFile)(file)) {
|
198
|
-
app.metadataCache.uniqueFileLookup.add(file.name.toLowerCase(), file);
|
199
|
-
}
|
200
|
-
return () => {
|
201
|
-
for (const path of deletedPaths) {
|
202
|
-
delete app.vault.fileMap[path];
|
203
|
-
}
|
204
|
-
if ((0, import_FileSystem.isFile)(file)) {
|
205
|
-
app.metadataCache.uniqueFileLookup.remove(file.name.toLowerCase(), file);
|
206
|
-
}
|
207
|
-
};
|
208
|
-
}
|
209
|
-
function tempRegisterFileAndRun(app, file, fn) {
|
210
|
-
const unregister = registerFile(app, file);
|
211
|
-
try {
|
212
|
-
return fn();
|
213
|
-
} finally {
|
214
|
-
unregister();
|
215
|
-
}
|
216
|
-
}
|
217
|
-
async function saveNote(app, pathOrFile) {
|
218
|
-
if (!(0, import_FileSystem.isMarkdownFile)(app, pathOrFile)) {
|
219
|
-
return;
|
220
|
-
}
|
221
|
-
const path = (0, import_FileSystem.getPath)(app, pathOrFile);
|
222
|
-
for (const leaf of app.workspace.getLeavesOfType("markdown")) {
|
223
|
-
if (leaf.view instanceof import_obsidian.MarkdownView && leaf.view.file?.path === path) {
|
224
|
-
await leaf.view.save();
|
225
|
-
}
|
226
|
-
}
|
227
|
-
}
|
228
|
-
// Annotate the CommonJS export names for ESM import in node:
|
229
|
-
0 && (module.exports = {
|
230
|
-
ensureMetadataCacheReady,
|
231
|
-
getAllLinks,
|
232
|
-
getBacklinksForFileOrPath,
|
233
|
-
getBacklinksForFileSafe,
|
234
|
-
getCacheSafe,
|
235
|
-
getFrontmatterSafe,
|
236
|
-
registerFile,
|
237
|
-
tempRegisterFileAndRun
|
238
|
-
});
|
239
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01ldGFkYXRhQ2FjaGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIE1ldGFkYXRhQ2FjaGVcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB3b3JraW5nIHdpdGggdGhlIG1ldGFkYXRhIGNhY2hlIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgQXBwLFxuICBDYWNoZWRNZXRhZGF0YSxcbiAgUmVmZXJlbmNlLFxuICBUQWJzdHJhY3RGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB0eXBlIHsgQ3VzdG9tQXJyYXlEaWN0IH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncyc7XG5cbmltcG9ydCB7IE1hcmtkb3duVmlldyB9IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7XG4gIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUsXG4gIGlzUmVmZXJlbmNlQ2FjaGUsXG4gIHBhcmVudEZvbGRlclBhdGhcbn0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncy9pbXBsZW1lbnRhdGlvbnMnO1xuXG5pbXBvcnQgdHlwZSB7IFJldHJ5T3B0aW9ucyB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB0eXBlIHsgUGF0aE9yRmlsZSB9IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgdHlwZSB7IENvbWJpbmVkRnJvbnRtYXR0ZXIgfSBmcm9tICcuL0Zyb250bWF0dGVyLnRzJztcblxuaW1wb3J0IHsgcmV0cnlXaXRoVGltZW91dCB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGdldExpYkRlYnVnZ2VyIH0gZnJvbSAnLi4vRGVidWcudHMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uL0Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldE5lc3RlZFByb3BlcnR5VmFsdWUgfSBmcm9tICcuLi9PYmplY3QudHMnO1xuaW1wb3J0IHtcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRQYXRoLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBwYXJzZUZyb250bWF0dGVyIH0gZnJvbSAnLi9Gcm9udG1hdHRlci50cyc7XG5pbXBvcnQgeyBzb3J0UmVmZXJlbmNlcyB9IGZyb20gJy4vUmVmZXJlbmNlLnRzJztcbmltcG9ydCB7IHJlYWRTYWZlIH0gZnJvbSAnLi9WYXVsdC50cyc7XG5cbi8qKlxuICogV3JhcHBlciBmb3IgdGhlIGdldEJhY2tsaW5rc0ZvckZpbGUgbWV0aG9kIHRoYXQgcHJvdmlkZXMgYSBzYWZlIG92ZXJsb2FkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldEJhY2tsaW5rc0ZvckZpbGVTYWZlV3JhcHBlciB7XG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGJhY2tsaW5rcyBmb3IgYSBmaWxlIHNhZmVseS5cbiAgICpcbiAgICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIG9iamVjdC5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYW4gYXJyYXkgZGljdGlvbmFyeSBvZiBiYWNrbGlua3MuXG4gICAqL1xuICBzYWZlKHBhdGhPckZpbGU6IFBhdGhPckZpbGUpOiBQcm9taXNlPEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+Pjtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgdGhlIG1ldGFkYXRhIGNhY2hlIGlzIHJlYWR5IGZvciBhbGwgZmlsZXMuXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIG1ldGFkYXRhIGNhY2hlIGlzIHJlYWR5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZW5zdXJlTWV0YWRhdGFDYWNoZVJlYWR5KGFwcDogQXBwKTogUHJvbWlzZTx2b2lkPiB7XG4gIGZvciAoY29uc3QgW3BhdGgsIGNhY2hlXSBvZiBPYmplY3QuZW50cmllcyhhcHAubWV0YWRhdGFDYWNoZS5maWxlQ2FjaGUpKSB7XG4gICAgaWYgKCFjYWNoZS5oYXNoKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoYXBwLm1ldGFkYXRhQ2FjaGUubWV0YWRhdGFDYWNoZVtjYWNoZS5oYXNoXSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgYXdhaXQgZ2V0Q2FjaGVTYWZlKGFwcCwgcGF0aCk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYWxsIGxpbmtzIGZyb20gdGhlIHByb3ZpZGVkIGNhY2hlLlxuICpcbiAqIEBwYXJhbSBjYWNoZSAtIFRoZSBjYWNoZWQgbWV0YWRhdGEuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiByZWZlcmVuY2UgY2FjaGVzIHJlcHJlc2VudGluZyB0aGUgbGlua3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxMaW5rcyhjYWNoZTogQ2FjaGVkTWV0YWRhdGEpOiBSZWZlcmVuY2VbXSB7XG4gIGxldCBsaW5rczogUmVmZXJlbmNlW10gPSBbXTtcblxuICBpZiAoY2FjaGUubGlua3MpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmxpbmtzKTtcbiAgfVxuXG4gIGlmIChjYWNoZS5lbWJlZHMpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmVtYmVkcyk7XG4gIH1cblxuICBpZiAoY2FjaGUuZnJvbnRtYXR0ZXJMaW5rcykge1xuICAgIGxpbmtzLnB1c2goLi4uY2FjaGUuZnJvbnRtYXR0ZXJMaW5rcyk7XG4gIH1cblxuICBzb3J0UmVmZXJlbmNlcyhsaW5rcyk7XG5cbiAgLy8gQlVHOiBodHRwczovL2ZvcnVtLm9ic2lkaWFuLm1kL3QvYnVnLWR1cGxpY2F0ZWQtbGlua3MtaW4tbWV0YWRhdGFjYWNoZS1pbnNpZGUtZm9vdG5vdGVzLzg1NTUxXG4gIGxpbmtzID0gbGlua3MuZmlsdGVyKChsaW5rLCBpbmRleCkgPT4ge1xuICAgIGlmIChpbmRleCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgcHJldmlvdXNMaW5rID0gbGlua3NbaW5kZXggLSAxXTtcbiAgICBpZiAoIXByZXZpb3VzTGluaykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGlzUmVmZXJlbmNlQ2FjaGUobGluaykgJiYgaXNSZWZlcmVuY2VDYWNoZShwcmV2aW91c0xpbmspKSB7XG4gICAgICByZXR1cm4gbGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQgIT09IHByZXZpb3VzTGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQ7XG4gICAgfVxuXG4gICAgaWYgKGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUobGluaykgJiYgaXNGcm9udG1hdHRlckxpbmtDYWNoZShwcmV2aW91c0xpbmspKSB7XG4gICAgICByZXR1cm4gbGluay5rZXkgIT09IHByZXZpb3VzTGluay5rZXk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xuXG4gIHJldHVybiBsaW5rcztcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGJhY2tsaW5rcyBmb3IgYSBmaWxlIG9yIHBhdGguXG4gKiBOT1RFOiBUaGUgZmlsZSBtYXkgYmUgbm9uLWV4aXN0ZW50LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICogQHJldHVybnMgVGhlIGJhY2tsaW5rcyBmb3IgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRCYWNrbGlua3NGb3JGaWxlT3JQYXRoKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogQ3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZT4ge1xuICBjb25zdCBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGhPckZpbGUsIHRydWUpO1xuICByZXR1cm4gdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1bihhcHAsIGZpbGUsICgpID0+IGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUoZmlsZSkpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgYmFja2xpbmtzIGZvciBhIGZpbGUgc2FmZWx5LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICogQHBhcmFtIHJldHJ5T3B0aW9ucyAtIE9wdGlvbmFsIHJldHJ5IG9wdGlvbnMuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhbiBhcnJheSBkaWN0aW9uYXJ5IG9mIGJhY2tsaW5rcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFJldHJ5T3B0aW9ucyA9IHt9KTogUHJvbWlzZTxDdXN0b21BcnJheURpY3Q8UmVmZXJlbmNlPj4ge1xuICBjb25zdCBzYWZlT3ZlcmxvYWQgPSAoYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0QmFja2xpbmtzRm9yRmlsZSBhcyBQYXJ0aWFsPEdldEJhY2tsaW5rc0ZvckZpbGVTYWZlV3JhcHBlcj4pLnNhZmU7XG4gIGlmIChzYWZlT3ZlcmxvYWQpIHtcbiAgICByZXR1cm4gc2FmZU92ZXJsb2FkKHBhdGhPckZpbGUpO1xuICB9XG4gIGxldCBiYWNrbGlua3M6IEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+ID0gbnVsbCBhcyB1bmtub3duIGFzIEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+O1xuICBhd2FpdCByZXRyeVdpdGhUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGhPckZpbGUpO1xuICAgIGF3YWl0IGVuc3VyZU1ldGFkYXRhQ2FjaGVSZWFkeShhcHApO1xuICAgIGJhY2tsaW5rcyA9IGdldEJhY2tsaW5rc0ZvckZpbGVPclBhdGgoYXBwLCBmaWxlKTtcbiAgICBmb3IgKGNvbnN0IG5vdGVQYXRoIG9mIGJhY2tsaW5rcy5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IG5vdGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgbm90ZVBhdGgpO1xuICAgICAgaWYgKCFub3RlKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgc2F2ZU5vdGUoYXBwLCBub3RlKTtcblxuICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRTYWZlKGFwcCwgbm90ZSk7XG4gICAgICBpZiAoIWNvbnRlbnQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgY29uc3QgZnJvbnRtYXR0ZXIgPSBwYXJzZUZyb250bWF0dGVyKGNvbnRlbnQpO1xuICAgICAgY29uc3QgbGlua3MgPSBiYWNrbGlua3MuZ2V0KG5vdGVQYXRoKTtcbiAgICAgIGlmICghbGlua3MpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgICAgbGV0IGFjdHVhbExpbms6IHN0cmluZztcbiAgICAgICAgaWYgKGlzUmVmZXJlbmNlQ2FjaGUobGluaykpIHtcbiAgICAgICAgICBhY3R1YWxMaW5rID0gY29udGVudC5zbGljZShsaW5rLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCwgbGluay5wb3NpdGlvbi5lbmQub2Zmc2V0KTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0Zyb250bWF0dGVyTGlua0NhY2hlKGxpbmspKSB7XG4gICAgICAgICAgY29uc3QgbGlua1ZhbHVlID0gZ2V0TmVzdGVkUHJvcGVydHlWYWx1ZShmcm9udG1hdHRlciwgbGluay5rZXkpO1xuICAgICAgICAgIGlmICh0eXBlb2YgbGlua1ZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhY3R1YWxMaW5rID0gbGlua1ZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhY3R1YWxMaW5rICE9PSBsaW5rLm9yaWdpbmFsKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIHJldHJ5T3B0aW9ucyk7XG5cbiAgcmV0dXJuIGJhY2tsaW5rcztcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGNhY2hlZCBtZXRhZGF0YSBmb3IgYSBnaXZlbiBmaWxlIG9yIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZU9yUGF0aCAtIFRoZSBmaWxlIG9yIHBhdGggdG8gcmV0cmlldmUgdGhlIG1ldGFkYXRhIGZvci5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbCByZXRyeSBvcHRpb25zIGZvciB0aGUgcmV0cmlldmFsIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgY2FjaGVkIG1ldGFkYXRhIGZvciB0aGUgZmlsZSwgb3IgbnVsbCBpZiBpdCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVTYWZlKGFwcDogQXBwLCBmaWxlT3JQYXRoOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFJldHJ5T3B0aW9ucyA9IHt9KTogUHJvbWlzZTxDYWNoZWRNZXRhZGF0YSB8IG51bGw+IHtcbiAgY29uc3QgX2RlYnVnZ2VyID0gZ2V0TGliRGVidWdnZXIoJ01ldGFkYXRhQ2FjaGU6Z2V0Q2FjaGVTYWZlJyk7XG5cbiAgbGV0IGNhY2hlOiBDYWNoZWRNZXRhZGF0YSB8IG51bGwgPSBudWxsO1xuXG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgZmlsZU9yUGF0aCk7XG5cbiAgICBpZiAoIWZpbGUgfHwgZmlsZS5kZWxldGVkKSB7XG4gICAgICBjYWNoZSA9IG51bGw7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBhd2FpdCBzYXZlTm90ZShhcHAsIGZpbGUpO1xuXG4gICAgY29uc3QgZmlsZUluZm8gPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlSW5mbyhmaWxlLnBhdGgpO1xuICAgIGNvbnN0IHN0YXQgPSBhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5zdGF0KGZpbGUucGF0aCk7XG5cbiAgICBpZiAoIWZpbGVJbmZvKSB7XG4gICAgICBfZGVidWdnZXIoYEZpbGUgY2FjaGUgaW5mbyBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKCFzdGF0KSB7XG4gICAgICBfZGVidWdnZXIoYEZpbGUgc3RhdCBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGZpbGUuc3RhdC5tdGltZSA8IHN0YXQubXRpbWUpIHtcbiAgICAgIGFwcC52YXVsdC5vbkNoYW5nZSgnbW9kaWZpZWQnLCBmaWxlLnBhdGgsIHVuZGVmaW5lZCwgc3RhdCk7XG4gICAgICBfZGVidWdnZXIoXG4gICAgICAgIGBDYWNoZWQgdGltZXN0YW1wIGZvciAke2ZpbGUucGF0aH0gaXMgZnJvbSAke25ldyBEYXRlKGZpbGUuc3RhdC5tdGltZSkudG9TdHJpbmcoKX0gd2hpY2ggaXMgb2xkZXIgdGhhbiB0aGUgZmlsZSBzeXN0ZW0gbW9kaWZpY2F0aW9uIHRpbWVzdGFtcCAke1xuICAgICAgICAgIG5ldyBEYXRlKHN0YXQubXRpbWUpLnRvU3RyaW5nKClcbiAgICAgICAgfWBcbiAgICAgICk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChmaWxlSW5mby5tdGltZSA8IHN0YXQubXRpbWUpIHtcbiAgICAgIF9kZWJ1Z2dlcihcbiAgICAgICAgYEZpbGUgY2FjaGUgaW5mbyBmb3IgJHtmaWxlLnBhdGh9IGlzIGZyb20gJHtuZXcgRGF0ZShmaWxlSW5mby5tdGltZSkudG9TdHJpbmcoKX0gd2hpY2ggaXMgb2xkZXIgdGhhbiB0aGUgZmlsZSBtb2RpZmljYXRpb24gdGltZXN0YW1wICR7XG4gICAgICAgICAgbmV3IERhdGUoc3RhdC5tdGltZSkudG9TdHJpbmcoKVxuICAgICAgICB9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY2FjaGUgPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlQ2FjaGUoZmlsZSk7XG4gICAgaWYgKCFjYWNoZSkge1xuICAgICAgX2RlYnVnZ2VyKGBGaWxlIGNhY2hlIGZvciAke2ZpbGUucGF0aH0gaXMgbWlzc2luZ2ApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgcmV0cnlPcHRpb25zKTtcblxuICByZXR1cm4gY2FjaGU7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBmcm9udCBtYXR0ZXIgZnJvbSB0aGUgbWV0YWRhdGEgY2FjaGUgc2FmZWx5LlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRtYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gcmV0cmlldmUgdGhlIGZyb250IG1hdHRlciBmcm9tLlxuICogQHJldHVybnMgVGhlIGNvbWJpbmVkIGZyb250IG1hdHRlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZyb250bWF0dGVyU2FmZTxDdXN0b21Gcm9udG1hdHRlciA9IHVua25vd24+KGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogUHJvbWlzZTxDb21iaW5lZEZyb250bWF0dGVyPEN1c3RvbUZyb250bWF0dGVyPj4ge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGhPckZpbGUpO1xuICByZXR1cm4gKGNhY2hlPy5mcm9udG1hdHRlciA/PyB7fSkgYXMgQ29tYmluZWRGcm9udG1hdHRlcjxDdXN0b21Gcm9udG1hdHRlcj47XG59XG5cbi8qKipcbiAqIFJlZ2lzdGVycyBhIGZpbGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gcmVnaXN0ZXIuXG4gKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgdW5yZWdpc3RlcnMgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckZpbGUoYXBwOiBBcHAsIGZpbGU6IFRBYnN0cmFjdEZpbGUpOiAoKSA9PiB2b2lkIHtcbiAgaWYgKCFmaWxlLmRlbGV0ZWQpIHtcbiAgICByZXR1cm4gbm9vcDtcbiAgfVxuXG4gIGNvbnN0IGRlbGV0ZWRQYXRoczogc3RyaW5nW10gPSBbXTtcblxuICBsZXQgZGVsZXRlZEZpbGU6IFRBYnN0cmFjdEZpbGUgPSBmaWxlO1xuXG4gIHdoaWxlIChkZWxldGVkRmlsZS5kZWxldGVkKSB7XG4gICAgZGVsZXRlZFBhdGhzLnB1c2goZGVsZXRlZEZpbGUucGF0aCk7XG4gICAgYXBwLnZhdWx0LmZpbGVNYXBbZGVsZXRlZEZpbGUucGF0aF0gPSBkZWxldGVkRmlsZTtcbiAgICBkZWxldGVkRmlsZSA9IGRlbGV0ZWRGaWxlLnBhcmVudCA/PyBnZXRGb2xkZXIoYXBwLCBwYXJlbnRGb2xkZXJQYXRoKGRlbGV0ZWRGaWxlLnBhdGgpLCB0cnVlKTtcbiAgfVxuXG4gIGlmIChpc0ZpbGUoZmlsZSkpIHtcbiAgICBhcHAubWV0YWRhdGFDYWNoZS51bmlxdWVGaWxlTG9va3VwLmFkZChmaWxlLm5hbWUudG9Mb3dlckNhc2UoKSwgZmlsZSk7XG4gIH1cblxuICByZXR1cm4gKCkgPT4ge1xuICAgIGZvciAoY29uc3QgcGF0aCBvZiBkZWxldGVkUGF0aHMpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHluYW1pYy1kZWxldGVcbiAgICAgIGRlbGV0ZSBhcHAudmF1bHQuZmlsZU1hcFtwYXRoXTtcbiAgICB9XG5cbiAgICBpZiAoaXNGaWxlKGZpbGUpKSB7XG4gICAgICBhcHAubWV0YWRhdGFDYWNoZS51bmlxdWVGaWxlTG9va3VwLnJlbW92ZShmaWxlLm5hbWUudG9Mb3dlckNhc2UoKSwgZmlsZSk7XG4gICAgfVxuICB9O1xufVxuXG4vKipcbiAqIFRlbXBvcmFyaWx5IHJlZ2lzdGVycyBhIGZpbGUgYW5kIHJ1bnMgYSBmdW5jdGlvbi5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gdGVtcG9yYXJpbHkgcmVnaXN0ZXIuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gcnVuLlxuICogQHJldHVybnMgVGhlIHJlc3VsdCBvZiB0aGUgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZW1wUmVnaXN0ZXJGaWxlQW5kUnVuPFQ+KGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlLCBmbjogKCkgPT4gVCk6IFQge1xuICBjb25zdCB1bnJlZ2lzdGVyID0gcmVnaXN0ZXJGaWxlKGFwcCwgZmlsZSk7XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gZm4oKTtcbiAgfSBmaW5hbGx5IHtcbiAgICB1bnJlZ2lzdGVyKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBTYXZlcyB0aGUgc3BlY2lmaWVkIG5vdGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIG5vdGUgdG8gYmUgc2F2ZWQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBub3RlIGlzIHNhdmVkLlxuICovXG5hc3luYyBmdW5jdGlvbiBzYXZlTm90ZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIWlzTWFya2Rvd25GaWxlKGFwcCwgcGF0aE9yRmlsZSkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBwYXRoID0gZ2V0UGF0aChhcHAsIHBhdGhPckZpbGUpO1xuXG4gIGZvciAoY29uc3QgbGVhZiBvZiBhcHAud29ya3NwYWNlLmdldExlYXZlc09mVHlwZSgnbWFya2Rvd24nKSkge1xuICAgIGlmIChsZWFmLnZpZXcgaW5zdGFuY2VvZiBNYXJrZG93blZpZXcgJiYgbGVhZi52aWV3LmZpbGU/LnBhdGggPT09IHBhdGgpIHtcbiAgICAgIGF3YWl0IGxlYWYudmlldy5zYXZlKCk7XG4gICAgfVxuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBYUEsc0JBQTZCO0FBQzdCLDZCQUlPO0FBTVAsbUJBQWlDO0FBQ2pDLG1CQUErQjtBQUMvQixzQkFBcUI7QUFDckIsb0JBQXVDO0FBQ3ZDLHdCQU9PO0FBQ1AseUJBQWlDO0FBQ2pDLHVCQUErQjtBQUMvQixtQkFBeUI7QUFvQnpCLGVBQXNCLHlCQUF5QixLQUF5QjtBQUN0RSxhQUFXLENBQUMsTUFBTSxLQUFLLEtBQUssT0FBTyxRQUFRLElBQUksY0FB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
|
@@ -1,87 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @packageDocumentation MetadataCache
|
3
|
-
* This module provides utility functions for working with the metadata cache in Obsidian.
|
4
|
-
*/
|
5
|
-
import type { App, CachedMetadata, Reference, TAbstractFile } from 'obsidian';
|
6
|
-
import type { CustomArrayDict } from 'obsidian-typings';
|
7
|
-
import type { RetryOptions } from '../Async.cjs';
|
8
|
-
import type { PathOrFile } from './FileSystem.cjs';
|
9
|
-
import type { CombinedFrontmatter } from './Frontmatter.cjs';
|
10
|
-
/**
|
11
|
-
* Wrapper for the getBacklinksForFile method that provides a safe overload.
|
12
|
-
*/
|
13
|
-
export interface GetBacklinksForFileSafeWrapper {
|
14
|
-
/**
|
15
|
-
* Retrieves the backlinks for a file safely.
|
16
|
-
*
|
17
|
-
* @param pathOrFile - The path or file object.
|
18
|
-
* @returns A promise that resolves to an array dictionary of backlinks.
|
19
|
-
*/
|
20
|
-
safe(pathOrFile: PathOrFile): Promise<CustomArrayDict<Reference>>;
|
21
|
-
}
|
22
|
-
/**
|
23
|
-
* Ensures that the metadata cache is ready for all files.
|
24
|
-
* @param app - The Obsidian app instance.
|
25
|
-
* @returns A promise that resolves when the metadata cache is ready.
|
26
|
-
*/
|
27
|
-
export declare function ensureMetadataCacheReady(app: App): Promise<void>;
|
28
|
-
/**
|
29
|
-
* Retrieves all links from the provided cache.
|
30
|
-
*
|
31
|
-
* @param cache - The cached metadata.
|
32
|
-
* @returns An array of reference caches representing the links.
|
33
|
-
*/
|
34
|
-
export declare function getAllLinks(cache: CachedMetadata): Reference[];
|
35
|
-
/**
|
36
|
-
* Retrieves the backlinks for a file or path.
|
37
|
-
* NOTE: The file may be non-existent.
|
38
|
-
*
|
39
|
-
* @param app - The Obsidian application instance.
|
40
|
-
* @param pathOrFile - The path or file object.
|
41
|
-
* @returns The backlinks for the file.
|
42
|
-
*/
|
43
|
-
export declare function getBacklinksForFileOrPath(app: App, pathOrFile: PathOrFile): CustomArrayDict<Reference>;
|
44
|
-
/**
|
45
|
-
* Retrieves the backlinks for a file safely.
|
46
|
-
*
|
47
|
-
* @param app - The Obsidian application instance.
|
48
|
-
* @param pathOrFile - The path or file object.
|
49
|
-
* @param retryOptions - Optional retry options.
|
50
|
-
* @returns A promise that resolves to an array dictionary of backlinks.
|
51
|
-
*/
|
52
|
-
export declare function getBacklinksForFileSafe(app: App, pathOrFile: PathOrFile, retryOptions?: RetryOptions): Promise<CustomArrayDict<Reference>>;
|
53
|
-
/**
|
54
|
-
* Retrieves the cached metadata for a given file or path.
|
55
|
-
*
|
56
|
-
* @param app - The Obsidian app instance.
|
57
|
-
* @param fileOrPath - The file or path to retrieve the metadata for.
|
58
|
-
* @param retryOptions - Optional retry options for the retrieval process.
|
59
|
-
* @returns The cached metadata for the file, or null if it doesn't exist.
|
60
|
-
*/
|
61
|
-
export declare function getCacheSafe(app: App, fileOrPath: PathOrFile, retryOptions?: RetryOptions): Promise<CachedMetadata | null>;
|
62
|
-
/**
|
63
|
-
* Retrieves the front matter from the metadata cache safely.
|
64
|
-
*
|
65
|
-
* @typeParam CustomFrontmatter - The type of custom front matter.
|
66
|
-
* @param app - The Obsidian app instance.
|
67
|
-
* @param pathOrFile - The path or file to retrieve the front matter from.
|
68
|
-
* @returns The combined front matter.
|
69
|
-
*/
|
70
|
-
export declare function getFrontmatterSafe<CustomFrontmatter = unknown>(app: App, pathOrFile: PathOrFile): Promise<CombinedFrontmatter<CustomFrontmatter>>;
|
71
|
-
/***
|
72
|
-
* Registers a file in the Obsidian app.
|
73
|
-
*
|
74
|
-
* @param app - The Obsidian app instance.
|
75
|
-
* @param file - The file to register.
|
76
|
-
* @returns A function that unregisters the file.
|
77
|
-
*/
|
78
|
-
export declare function registerFile(app: App, file: TAbstractFile): () => void;
|
79
|
-
/**
|
80
|
-
* Temporarily registers a file and runs a function.
|
81
|
-
*
|
82
|
-
* @param app - The Obsidian app instance.
|
83
|
-
* @param file - The file to temporarily register.
|
84
|
-
* @param fn - The function to run.
|
85
|
-
* @returns The result of the function.
|
86
|
-
*/
|
87
|
-
export declare function tempRegisterFileAndRun<T>(app: App, file: TAbstractFile, fn: () => T): T;
|
@@ -1 +0,0 @@
|
|
1
|
-
export * from './MetadataCache.cjs';
|
@@ -1,219 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
-
if you want to view the source, please visit the github repository of this plugin
|
4
|
-
*/
|
5
|
-
|
6
|
-
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
-
|
8
|
-
import { MarkdownView } from "obsidian";
|
9
|
-
import {
|
10
|
-
isFrontmatterLinkCache,
|
11
|
-
isReferenceCache,
|
12
|
-
parentFolderPath
|
13
|
-
} from "obsidian-typings/implementations";
|
14
|
-
import { retryWithTimeout } from "../Async.mjs";
|
15
|
-
import { getLibDebugger } from "../Debug.mjs";
|
16
|
-
import { noop } from "../Function.mjs";
|
17
|
-
import { getNestedPropertyValue } from "../Object.mjs";
|
18
|
-
import {
|
19
|
-
getFile,
|
20
|
-
getFileOrNull,
|
21
|
-
getFolder,
|
22
|
-
getPath,
|
23
|
-
isFile,
|
24
|
-
isMarkdownFile
|
25
|
-
} from "./FileSystem.mjs";
|
26
|
-
import { parseFrontmatter } from "./Frontmatter.mjs";
|
27
|
-
import { sortReferences } from "./Reference.mjs";
|
28
|
-
import { readSafe } from "./Vault.mjs";
|
29
|
-
async function ensureMetadataCacheReady(app) {
|
30
|
-
for (const [path, cache] of Object.entries(app.metadataCache.fileCache)) {
|
31
|
-
if (!cache.hash) {
|
32
|
-
continue;
|
33
|
-
}
|
34
|
-
if (app.metadataCache.metadataCache[cache.hash]) {
|
35
|
-
continue;
|
36
|
-
}
|
37
|
-
await getCacheSafe(app, path);
|
38
|
-
}
|
39
|
-
}
|
40
|
-
function getAllLinks(cache) {
|
41
|
-
let links = [];
|
42
|
-
if (cache.links) {
|
43
|
-
links.push(...cache.links);
|
44
|
-
}
|
45
|
-
if (cache.embeds) {
|
46
|
-
links.push(...cache.embeds);
|
47
|
-
}
|
48
|
-
if (cache.frontmatterLinks) {
|
49
|
-
links.push(...cache.frontmatterLinks);
|
50
|
-
}
|
51
|
-
sortReferences(links);
|
52
|
-
links = links.filter((link, index) => {
|
53
|
-
if (index === 0) {
|
54
|
-
return true;
|
55
|
-
}
|
56
|
-
const previousLink = links[index - 1];
|
57
|
-
if (!previousLink) {
|
58
|
-
return true;
|
59
|
-
}
|
60
|
-
if (isReferenceCache(link) && isReferenceCache(previousLink)) {
|
61
|
-
return link.position.start.offset !== previousLink.position.start.offset;
|
62
|
-
}
|
63
|
-
if (isFrontmatterLinkCache(link) && isFrontmatterLinkCache(previousLink)) {
|
64
|
-
return link.key !== previousLink.key;
|
65
|
-
}
|
66
|
-
return true;
|
67
|
-
});
|
68
|
-
return links;
|
69
|
-
}
|
70
|
-
function getBacklinksForFileOrPath(app, pathOrFile) {
|
71
|
-
const file = getFile(app, pathOrFile, true);
|
72
|
-
return tempRegisterFileAndRun(app, file, () => app.metadataCache.getBacklinksForFile(file));
|
73
|
-
}
|
74
|
-
async function getBacklinksForFileSafe(app, pathOrFile, retryOptions = {}) {
|
75
|
-
const safeOverload = app.metadataCache.getBacklinksForFile.safe;
|
76
|
-
if (safeOverload) {
|
77
|
-
return safeOverload(pathOrFile);
|
78
|
-
}
|
79
|
-
let backlinks = null;
|
80
|
-
await retryWithTimeout(async () => {
|
81
|
-
const file = getFile(app, pathOrFile);
|
82
|
-
await ensureMetadataCacheReady(app);
|
83
|
-
backlinks = getBacklinksForFileOrPath(app, file);
|
84
|
-
for (const notePath of backlinks.keys()) {
|
85
|
-
const note = getFileOrNull(app, notePath);
|
86
|
-
if (!note) {
|
87
|
-
return false;
|
88
|
-
}
|
89
|
-
await saveNote(app, note);
|
90
|
-
const content = await readSafe(app, note);
|
91
|
-
if (!content) {
|
92
|
-
return false;
|
93
|
-
}
|
94
|
-
const frontmatter = parseFrontmatter(content);
|
95
|
-
const links = backlinks.get(notePath);
|
96
|
-
if (!links) {
|
97
|
-
return false;
|
98
|
-
}
|
99
|
-
for (const link of links) {
|
100
|
-
let actualLink;
|
101
|
-
if (isReferenceCache(link)) {
|
102
|
-
actualLink = content.slice(link.position.start.offset, link.position.end.offset);
|
103
|
-
} else if (isFrontmatterLinkCache(link)) {
|
104
|
-
const linkValue = getNestedPropertyValue(frontmatter, link.key);
|
105
|
-
if (typeof linkValue !== "string") {
|
106
|
-
return false;
|
107
|
-
}
|
108
|
-
actualLink = linkValue;
|
109
|
-
} else {
|
110
|
-
return true;
|
111
|
-
}
|
112
|
-
if (actualLink !== link.original) {
|
113
|
-
return false;
|
114
|
-
}
|
115
|
-
}
|
116
|
-
}
|
117
|
-
return true;
|
118
|
-
}, retryOptions);
|
119
|
-
return backlinks;
|
120
|
-
}
|
121
|
-
async function getCacheSafe(app, fileOrPath, retryOptions = {}) {
|
122
|
-
const _debugger = getLibDebugger("MetadataCache:getCacheSafe");
|
123
|
-
let cache = null;
|
124
|
-
await retryWithTimeout(async () => {
|
125
|
-
const file = getFileOrNull(app, fileOrPath);
|
126
|
-
if (!file || file.deleted) {
|
127
|
-
cache = null;
|
128
|
-
return true;
|
129
|
-
}
|
130
|
-
await saveNote(app, file);
|
131
|
-
const fileInfo = app.metadataCache.getFileInfo(file.path);
|
132
|
-
const stat = await app.vault.adapter.stat(file.path);
|
133
|
-
if (!fileInfo) {
|
134
|
-
_debugger(`File cache info for ${file.path} is missing`);
|
135
|
-
return false;
|
136
|
-
}
|
137
|
-
if (!stat) {
|
138
|
-
_debugger(`File stat for ${file.path} is missing`);
|
139
|
-
return false;
|
140
|
-
}
|
141
|
-
if (file.stat.mtime < stat.mtime) {
|
142
|
-
app.vault.onChange("modified", file.path, void 0, stat);
|
143
|
-
_debugger(
|
144
|
-
`Cached timestamp for ${file.path} is from ${new Date(file.stat.mtime).toString()} which is older than the file system modification timestamp ${new Date(stat.mtime).toString()}`
|
145
|
-
);
|
146
|
-
return false;
|
147
|
-
}
|
148
|
-
if (fileInfo.mtime < stat.mtime) {
|
149
|
-
_debugger(
|
150
|
-
`File cache info for ${file.path} is from ${new Date(fileInfo.mtime).toString()} which is older than the file modification timestamp ${new Date(stat.mtime).toString()}`
|
151
|
-
);
|
152
|
-
return false;
|
153
|
-
}
|
154
|
-
cache = app.metadataCache.getFileCache(file);
|
155
|
-
if (!cache) {
|
156
|
-
_debugger(`File cache for ${file.path} is missing`);
|
157
|
-
return false;
|
158
|
-
}
|
159
|
-
return true;
|
160
|
-
}, retryOptions);
|
161
|
-
return cache;
|
162
|
-
}
|
163
|
-
async function getFrontmatterSafe(app, pathOrFile) {
|
164
|
-
const cache = await getCacheSafe(app, pathOrFile);
|
165
|
-
return cache?.frontmatter ?? {};
|
166
|
-
}
|
167
|
-
function registerFile(app, file) {
|
168
|
-
if (!file.deleted) {
|
169
|
-
return noop;
|
170
|
-
}
|
171
|
-
const deletedPaths = [];
|
172
|
-
let deletedFile = file;
|
173
|
-
while (deletedFile.deleted) {
|
174
|
-
deletedPaths.push(deletedFile.path);
|
175
|
-
app.vault.fileMap[deletedFile.path] = deletedFile;
|
176
|
-
deletedFile = deletedFile.parent ?? getFolder(app, parentFolderPath(deletedFile.path), true);
|
177
|
-
}
|
178
|
-
if (isFile(file)) {
|
179
|
-
app.metadataCache.uniqueFileLookup.add(file.name.toLowerCase(), file);
|
180
|
-
}
|
181
|
-
return () => {
|
182
|
-
for (const path of deletedPaths) {
|
183
|
-
delete app.vault.fileMap[path];
|
184
|
-
}
|
185
|
-
if (isFile(file)) {
|
186
|
-
app.metadataCache.uniqueFileLookup.remove(file.name.toLowerCase(), file);
|
187
|
-
}
|
188
|
-
};
|
189
|
-
}
|
190
|
-
function tempRegisterFileAndRun(app, file, fn) {
|
191
|
-
const unregister = registerFile(app, file);
|
192
|
-
try {
|
193
|
-
return fn();
|
194
|
-
} finally {
|
195
|
-
unregister();
|
196
|
-
}
|
197
|
-
}
|
198
|
-
async function saveNote(app, pathOrFile) {
|
199
|
-
if (!isMarkdownFile(app, pathOrFile)) {
|
200
|
-
return;
|
201
|
-
}
|
202
|
-
const path = getPath(app, pathOrFile);
|
203
|
-
for (const leaf of app.workspace.getLeavesOfType("markdown")) {
|
204
|
-
if (leaf.view instanceof MarkdownView && leaf.view.file?.path === path) {
|
205
|
-
await leaf.view.save();
|
206
|
-
}
|
207
|
-
}
|
208
|
-
}
|
209
|
-
export {
|
210
|
-
ensureMetadataCacheReady,
|
211
|
-
getAllLinks,
|
212
|
-
getBacklinksForFileOrPath,
|
213
|
-
getBacklinksForFileSafe,
|
214
|
-
getCacheSafe,
|
215
|
-
getFrontmatterSafe,
|
216
|
-
registerFile,
|
217
|
-
tempRegisterFileAndRun
|
218
|
-
};
|
219
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuL01ldGFkYXRhQ2FjaGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIE1ldGFkYXRhQ2FjaGVcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB3b3JraW5nIHdpdGggdGhlIG1ldGFkYXRhIGNhY2hlIGluIE9ic2lkaWFuLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgQXBwLFxuICBDYWNoZWRNZXRhZGF0YSxcbiAgUmVmZXJlbmNlLFxuICBUQWJzdHJhY3RGaWxlXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB0eXBlIHsgQ3VzdG9tQXJyYXlEaWN0IH0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncyc7XG5cbmltcG9ydCB7IE1hcmtkb3duVmlldyB9IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7XG4gIGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUsXG4gIGlzUmVmZXJlbmNlQ2FjaGUsXG4gIHBhcmVudEZvbGRlclBhdGhcbn0gZnJvbSAnb2JzaWRpYW4tdHlwaW5ncy9pbXBsZW1lbnRhdGlvbnMnO1xuXG5pbXBvcnQgdHlwZSB7IFJldHJ5T3B0aW9ucyB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB0eXBlIHsgUGF0aE9yRmlsZSB9IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgdHlwZSB7IENvbWJpbmVkRnJvbnRtYXR0ZXIgfSBmcm9tICcuL0Zyb250bWF0dGVyLnRzJztcblxuaW1wb3J0IHsgcmV0cnlXaXRoVGltZW91dCB9IGZyb20gJy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGdldExpYkRlYnVnZ2VyIH0gZnJvbSAnLi4vRGVidWcudHMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uL0Z1bmN0aW9uLnRzJztcbmltcG9ydCB7IGdldE5lc3RlZFByb3BlcnR5VmFsdWUgfSBmcm9tICcuLi9PYmplY3QudHMnO1xuaW1wb3J0IHtcbiAgZ2V0RmlsZSxcbiAgZ2V0RmlsZU9yTnVsbCxcbiAgZ2V0Rm9sZGVyLFxuICBnZXRQYXRoLFxuICBpc0ZpbGUsXG4gIGlzTWFya2Rvd25GaWxlXG59IGZyb20gJy4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQgeyBwYXJzZUZyb250bWF0dGVyIH0gZnJvbSAnLi9Gcm9udG1hdHRlci50cyc7XG5pbXBvcnQgeyBzb3J0UmVmZXJlbmNlcyB9IGZyb20gJy4vUmVmZXJlbmNlLnRzJztcbmltcG9ydCB7IHJlYWRTYWZlIH0gZnJvbSAnLi9WYXVsdC50cyc7XG5cbi8qKlxuICogV3JhcHBlciBmb3IgdGhlIGdldEJhY2tsaW5rc0ZvckZpbGUgbWV0aG9kIHRoYXQgcHJvdmlkZXMgYSBzYWZlIG92ZXJsb2FkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldEJhY2tsaW5rc0ZvckZpbGVTYWZlV3JhcHBlciB7XG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGJhY2tsaW5rcyBmb3IgYSBmaWxlIHNhZmVseS5cbiAgICpcbiAgICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIG9iamVjdC5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYW4gYXJyYXkgZGljdGlvbmFyeSBvZiBiYWNrbGlua3MuXG4gICAqL1xuICBzYWZlKHBhdGhPckZpbGU6IFBhdGhPckZpbGUpOiBQcm9taXNlPEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+Pjtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgdGhlIG1ldGFkYXRhIGNhY2hlIGlzIHJlYWR5IGZvciBhbGwgZmlsZXMuXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIG1ldGFkYXRhIGNhY2hlIGlzIHJlYWR5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZW5zdXJlTWV0YWRhdGFDYWNoZVJlYWR5KGFwcDogQXBwKTogUHJvbWlzZTx2b2lkPiB7XG4gIGZvciAoY29uc3QgW3BhdGgsIGNhY2hlXSBvZiBPYmplY3QuZW50cmllcyhhcHAubWV0YWRhdGFDYWNoZS5maWxlQ2FjaGUpKSB7XG4gICAgaWYgKCFjYWNoZS5oYXNoKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoYXBwLm1ldGFkYXRhQ2FjaGUubWV0YWRhdGFDYWNoZVtjYWNoZS5oYXNoXSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgYXdhaXQgZ2V0Q2FjaGVTYWZlKGFwcCwgcGF0aCk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYWxsIGxpbmtzIGZyb20gdGhlIHByb3ZpZGVkIGNhY2hlLlxuICpcbiAqIEBwYXJhbSBjYWNoZSAtIFRoZSBjYWNoZWQgbWV0YWRhdGEuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiByZWZlcmVuY2UgY2FjaGVzIHJlcHJlc2VudGluZyB0aGUgbGlua3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxMaW5rcyhjYWNoZTogQ2FjaGVkTWV0YWRhdGEpOiBSZWZlcmVuY2VbXSB7XG4gIGxldCBsaW5rczogUmVmZXJlbmNlW10gPSBbXTtcblxuICBpZiAoY2FjaGUubGlua3MpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmxpbmtzKTtcbiAgfVxuXG4gIGlmIChjYWNoZS5lbWJlZHMpIHtcbiAgICBsaW5rcy5wdXNoKC4uLmNhY2hlLmVtYmVkcyk7XG4gIH1cblxuICBpZiAoY2FjaGUuZnJvbnRtYXR0ZXJMaW5rcykge1xuICAgIGxpbmtzLnB1c2goLi4uY2FjaGUuZnJvbnRtYXR0ZXJMaW5rcyk7XG4gIH1cblxuICBzb3J0UmVmZXJlbmNlcyhsaW5rcyk7XG5cbiAgLy8gQlVHOiBodHRwczovL2ZvcnVtLm9ic2lkaWFuLm1kL3QvYnVnLWR1cGxpY2F0ZWQtbGlua3MtaW4tbWV0YWRhdGFjYWNoZS1pbnNpZGUtZm9vdG5vdGVzLzg1NTUxXG4gIGxpbmtzID0gbGlua3MuZmlsdGVyKChsaW5rLCBpbmRleCkgPT4ge1xuICAgIGlmIChpbmRleCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgcHJldmlvdXNMaW5rID0gbGlua3NbaW5kZXggLSAxXTtcbiAgICBpZiAoIXByZXZpb3VzTGluaykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGlzUmVmZXJlbmNlQ2FjaGUobGluaykgJiYgaXNSZWZlcmVuY2VDYWNoZShwcmV2aW91c0xpbmspKSB7XG4gICAgICByZXR1cm4gbGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQgIT09IHByZXZpb3VzTGluay5wb3NpdGlvbi5zdGFydC5vZmZzZXQ7XG4gICAgfVxuXG4gICAgaWYgKGlzRnJvbnRtYXR0ZXJMaW5rQ2FjaGUobGluaykgJiYgaXNGcm9udG1hdHRlckxpbmtDYWNoZShwcmV2aW91c0xpbmspKSB7XG4gICAgICByZXR1cm4gbGluay5rZXkgIT09IHByZXZpb3VzTGluay5rZXk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xuXG4gIHJldHVybiBsaW5rcztcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGJhY2tsaW5rcyBmb3IgYSBmaWxlIG9yIHBhdGguXG4gKiBOT1RFOiBUaGUgZmlsZSBtYXkgYmUgbm9uLWV4aXN0ZW50LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICogQHJldHVybnMgVGhlIGJhY2tsaW5rcyBmb3IgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRCYWNrbGlua3NGb3JGaWxlT3JQYXRoKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogQ3VzdG9tQXJyYXlEaWN0PFJlZmVyZW5jZT4ge1xuICBjb25zdCBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGhPckZpbGUsIHRydWUpO1xuICByZXR1cm4gdGVtcFJlZ2lzdGVyRmlsZUFuZFJ1bihhcHAsIGZpbGUsICgpID0+IGFwcC5tZXRhZGF0YUNhY2hlLmdldEJhY2tsaW5rc0ZvckZpbGUoZmlsZSkpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgYmFja2xpbmtzIGZvciBhIGZpbGUgc2FmZWx5LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgb2JqZWN0LlxuICogQHBhcmFtIHJldHJ5T3B0aW9ucyAtIE9wdGlvbmFsIHJldHJ5IG9wdGlvbnMuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhbiBhcnJheSBkaWN0aW9uYXJ5IG9mIGJhY2tsaW5rcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEJhY2tsaW5rc0ZvckZpbGVTYWZlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFJldHJ5T3B0aW9ucyA9IHt9KTogUHJvbWlzZTxDdXN0b21BcnJheURpY3Q8UmVmZXJlbmNlPj4ge1xuICBjb25zdCBzYWZlT3ZlcmxvYWQgPSAoYXBwLm1ldGFkYXRhQ2FjaGUuZ2V0QmFja2xpbmtzRm9yRmlsZSBhcyBQYXJ0aWFsPEdldEJhY2tsaW5rc0ZvckZpbGVTYWZlV3JhcHBlcj4pLnNhZmU7XG4gIGlmIChzYWZlT3ZlcmxvYWQpIHtcbiAgICByZXR1cm4gc2FmZU92ZXJsb2FkKHBhdGhPckZpbGUpO1xuICB9XG4gIGxldCBiYWNrbGlua3M6IEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+ID0gbnVsbCBhcyB1bmtub3duIGFzIEN1c3RvbUFycmF5RGljdDxSZWZlcmVuY2U+O1xuICBhd2FpdCByZXRyeVdpdGhUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGhPckZpbGUpO1xuICAgIGF3YWl0IGVuc3VyZU1ldGFkYXRhQ2FjaGVSZWFkeShhcHApO1xuICAgIGJhY2tsaW5rcyA9IGdldEJhY2tsaW5rc0ZvckZpbGVPclBhdGgoYXBwLCBmaWxlKTtcbiAgICBmb3IgKGNvbnN0IG5vdGVQYXRoIG9mIGJhY2tsaW5rcy5rZXlzKCkpIHtcbiAgICAgIGNvbnN0IG5vdGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgbm90ZVBhdGgpO1xuICAgICAgaWYgKCFub3RlKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgc2F2ZU5vdGUoYXBwLCBub3RlKTtcblxuICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRTYWZlKGFwcCwgbm90ZSk7XG4gICAgICBpZiAoIWNvbnRlbnQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgY29uc3QgZnJvbnRtYXR0ZXIgPSBwYXJzZUZyb250bWF0dGVyKGNvbnRlbnQpO1xuICAgICAgY29uc3QgbGlua3MgPSBiYWNrbGlua3MuZ2V0KG5vdGVQYXRoKTtcbiAgICAgIGlmICghbGlua3MpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgICAgbGV0IGFjdHVhbExpbms6IHN0cmluZztcbiAgICAgICAgaWYgKGlzUmVmZXJlbmNlQ2FjaGUobGluaykpIHtcbiAgICAgICAgICBhY3R1YWxMaW5rID0gY29udGVudC5zbGljZShsaW5rLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCwgbGluay5wb3NpdGlvbi5lbmQub2Zmc2V0KTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0Zyb250bWF0dGVyTGlua0NhY2hlKGxpbmspKSB7XG4gICAgICAgICAgY29uc3QgbGlua1ZhbHVlID0gZ2V0TmVzdGVkUHJvcGVydHlWYWx1ZShmcm9udG1hdHRlciwgbGluay5rZXkpO1xuICAgICAgICAgIGlmICh0eXBlb2YgbGlua1ZhbHVlICE9PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhY3R1YWxMaW5rID0gbGlua1ZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhY3R1YWxMaW5rICE9PSBsaW5rLm9yaWdpbmFsKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH0sIHJldHJ5T3B0aW9ucyk7XG5cbiAgcmV0dXJuIGJhY2tsaW5rcztcbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIGNhY2hlZCBtZXRhZGF0YSBmb3IgYSBnaXZlbiBmaWxlIG9yIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZmlsZU9yUGF0aCAtIFRoZSBmaWxlIG9yIHBhdGggdG8gcmV0cmlldmUgdGhlIG1ldGFkYXRhIGZvci5cbiAqIEBwYXJhbSByZXRyeU9wdGlvbnMgLSBPcHRpb25hbCByZXRyeSBvcHRpb25zIGZvciB0aGUgcmV0cmlldmFsIHByb2Nlc3MuXG4gKiBAcmV0dXJucyBUaGUgY2FjaGVkIG1ldGFkYXRhIGZvciB0aGUgZmlsZSwgb3IgbnVsbCBpZiBpdCBkb2Vzbid0IGV4aXN0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVTYWZlKGFwcDogQXBwLCBmaWxlT3JQYXRoOiBQYXRoT3JGaWxlLCByZXRyeU9wdGlvbnM6IFJldHJ5T3B0aW9ucyA9IHt9KTogUHJvbWlzZTxDYWNoZWRNZXRhZGF0YSB8IG51bGw+IHtcbiAgY29uc3QgX2RlYnVnZ2VyID0gZ2V0TGliRGVidWdnZXIoJ01ldGFkYXRhQ2FjaGU6Z2V0Q2FjaGVTYWZlJyk7XG5cbiAgbGV0IGNhY2hlOiBDYWNoZWRNZXRhZGF0YSB8IG51bGwgPSBudWxsO1xuXG4gIGF3YWl0IHJldHJ5V2l0aFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgZmlsZU9yUGF0aCk7XG5cbiAgICBpZiAoIWZpbGUgfHwgZmlsZS5kZWxldGVkKSB7XG4gICAgICBjYWNoZSA9IG51bGw7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBhd2FpdCBzYXZlTm90ZShhcHAsIGZpbGUpO1xuXG4gICAgY29uc3QgZmlsZUluZm8gPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlSW5mbyhmaWxlLnBhdGgpO1xuICAgIGNvbnN0IHN0YXQgPSBhd2FpdCBhcHAudmF1bHQuYWRhcHRlci5zdGF0KGZpbGUucGF0aCk7XG5cbiAgICBpZiAoIWZpbGVJbmZvKSB7XG4gICAgICBfZGVidWdnZXIoYEZpbGUgY2FjaGUgaW5mbyBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKCFzdGF0KSB7XG4gICAgICBfZGVidWdnZXIoYEZpbGUgc3RhdCBmb3IgJHtmaWxlLnBhdGh9IGlzIG1pc3NpbmdgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGZpbGUuc3RhdC5tdGltZSA8IHN0YXQubXRpbWUpIHtcbiAgICAgIGFwcC52YXVsdC5vbkNoYW5nZSgnbW9kaWZpZWQnLCBmaWxlLnBhdGgsIHVuZGVmaW5lZCwgc3RhdCk7XG4gICAgICBfZGVidWdnZXIoXG4gICAgICAgIGBDYWNoZWQgdGltZXN0YW1wIGZvciAke2ZpbGUucGF0aH0gaXMgZnJvbSAke25ldyBEYXRlKGZpbGUuc3RhdC5tdGltZSkudG9TdHJpbmcoKX0gd2hpY2ggaXMgb2xkZXIgdGhhbiB0aGUgZmlsZSBzeXN0ZW0gbW9kaWZpY2F0aW9uIHRpbWVzdGFtcCAke1xuICAgICAgICAgIG5ldyBEYXRlKHN0YXQubXRpbWUpLnRvU3RyaW5nKClcbiAgICAgICAgfWBcbiAgICAgICk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmIChmaWxlSW5mby5tdGltZSA8IHN0YXQubXRpbWUpIHtcbiAgICAgIF9kZWJ1Z2dlcihcbiAgICAgICAgYEZpbGUgY2FjaGUgaW5mbyBmb3IgJHtmaWxlLnBhdGh9IGlzIGZyb20gJHtuZXcgRGF0ZShmaWxlSW5mby5tdGltZSkudG9TdHJpbmcoKX0gd2hpY2ggaXMgb2xkZXIgdGhhbiB0aGUgZmlsZSBtb2RpZmljYXRpb24gdGltZXN0YW1wICR7XG4gICAgICAgICAgbmV3IERhdGUoc3RhdC5tdGltZSkudG9TdHJpbmcoKVxuICAgICAgICB9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY2FjaGUgPSBhcHAubWV0YWRhdGFDYWNoZS5nZXRGaWxlQ2FjaGUoZmlsZSk7XG4gICAgaWYgKCFjYWNoZSkge1xuICAgICAgX2RlYnVnZ2VyKGBGaWxlIGNhY2hlIGZvciAke2ZpbGUucGF0aH0gaXMgbWlzc2luZ2ApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgcmV0cnlPcHRpb25zKTtcblxuICByZXR1cm4gY2FjaGU7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBmcm9udCBtYXR0ZXIgZnJvbSB0aGUgbWV0YWRhdGEgY2FjaGUgc2FmZWx5LlxuICpcbiAqIEB0eXBlUGFyYW0gQ3VzdG9tRnJvbnRtYXR0ZXIgLSBUaGUgdHlwZSBvZiBjdXN0b20gZnJvbnQgbWF0dGVyLlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gcmV0cmlldmUgdGhlIGZyb250IG1hdHRlciBmcm9tLlxuICogQHJldHVybnMgVGhlIGNvbWJpbmVkIGZyb250IG1hdHRlci5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZyb250bWF0dGVyU2FmZTxDdXN0b21Gcm9udG1hdHRlciA9IHVua25vd24+KGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogUHJvbWlzZTxDb21iaW5lZEZyb250bWF0dGVyPEN1c3RvbUZyb250bWF0dGVyPj4ge1xuICBjb25zdCBjYWNoZSA9IGF3YWl0IGdldENhY2hlU2FmZShhcHAsIHBhdGhPckZpbGUpO1xuICByZXR1cm4gKGNhY2hlPy5mcm9udG1hdHRlciA/PyB7fSkgYXMgQ29tYmluZWRGcm9udG1hdHRlcjxDdXN0b21Gcm9udG1hdHRlcj47XG59XG5cbi8qKipcbiAqIFJlZ2lzdGVycyBhIGZpbGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gcmVnaXN0ZXIuXG4gKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgdW5yZWdpc3RlcnMgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckZpbGUoYXBwOiBBcHAsIGZpbGU6IFRBYnN0cmFjdEZpbGUpOiAoKSA9PiB2b2lkIHtcbiAgaWYgKCFmaWxlLmRlbGV0ZWQpIHtcbiAgICByZXR1cm4gbm9vcDtcbiAgfVxuXG4gIGNvbnN0IGRlbGV0ZWRQYXRoczogc3RyaW5nW10gPSBbXTtcblxuICBsZXQgZGVsZXRlZEZpbGU6IFRBYnN0cmFjdEZpbGUgPSBmaWxlO1xuXG4gIHdoaWxlIChkZWxldGVkRmlsZS5kZWxldGVkKSB7XG4gICAgZGVsZXRlZFBhdGhzLnB1c2goZGVsZXRlZEZpbGUucGF0aCk7XG4gICAgYXBwLnZhdWx0LmZpbGVNYXBbZGVsZXRlZEZpbGUucGF0aF0gPSBkZWxldGVkRmlsZTtcbiAgICBkZWxldGVkRmlsZSA9IGRlbGV0ZWRGaWxlLnBhcmVudCA/PyBnZXRGb2xkZXIoYXBwLCBwYXJlbnRGb2xkZXJQYXRoKGRlbGV0ZWRGaWxlLnBhdGgpLCB0cnVlKTtcbiAgfVxuXG4gIGlmIChpc0ZpbGUoZmlsZSkpIHtcbiAgICBhcHAubWV0YWRhdGFDYWNoZS51bmlxdWVGaWxlTG9va3VwLmFkZChmaWxlLm5hbWUudG9Mb3dlckNhc2UoKSwgZmlsZSk7XG4gIH1cblxuICByZXR1cm4gKCkgPT4ge1xuICAgIGZvciAoY29uc3QgcGF0aCBvZiBkZWxldGVkUGF0aHMpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHluYW1pYy1kZWxldGVcbiAgICAgIGRlbGV0ZSBhcHAudmF1bHQuZmlsZU1hcFtwYXRoXTtcbiAgICB9XG5cbiAgICBpZiAoaXNGaWxlKGZpbGUpKSB7XG4gICAgICBhcHAubWV0YWRhdGFDYWNoZS51bmlxdWVGaWxlTG9va3VwLnJlbW92ZShmaWxlLm5hbWUudG9Mb3dlckNhc2UoKSwgZmlsZSk7XG4gICAgfVxuICB9O1xufVxuXG4vKipcbiAqIFRlbXBvcmFyaWx5IHJlZ2lzdGVycyBhIGZpbGUgYW5kIHJ1bnMgYSBmdW5jdGlvbi5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gdGVtcG9yYXJpbHkgcmVnaXN0ZXIuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gcnVuLlxuICogQHJldHVybnMgVGhlIHJlc3VsdCBvZiB0aGUgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0ZW1wUmVnaXN0ZXJGaWxlQW5kUnVuPFQ+KGFwcDogQXBwLCBmaWxlOiBUQWJzdHJhY3RGaWxlLCBmbjogKCkgPT4gVCk6IFQge1xuICBjb25zdCB1bnJlZ2lzdGVyID0gcmVnaXN0ZXJGaWxlKGFwcCwgZmlsZSk7XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gZm4oKTtcbiAgfSBmaW5hbGx5IHtcbiAgICB1bnJlZ2lzdGVyKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBTYXZlcyB0aGUgc3BlY2lmaWVkIG5vdGUgaW4gdGhlIE9ic2lkaWFuIGFwcC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIG5vdGUgdG8gYmUgc2F2ZWQuXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBub3RlIGlzIHNhdmVkLlxuICovXG5hc3luYyBmdW5jdGlvbiBzYXZlTm90ZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIWlzTWFya2Rvd25GaWxlKGFwcCwgcGF0aE9yRmlsZSkpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBwYXRoID0gZ2V0UGF0aChhcHAsIHBhdGhPckZpbGUpO1xuXG4gIGZvciAoY29uc3QgbGVhZiBvZiBhcHAud29ya3NwYWNlLmdldExlYXZlc09mVHlwZSgnbWFya2Rvd24nKSkge1xuICAgIGlmIChsZWFmLnZpZXcgaW5zdGFuY2VvZiBNYXJrZG93blZpZXcgJiYgbGVhZi52aWV3LmZpbGU/LnBhdGggPT09IHBhdGgpIHtcbiAgICAgIGF3YWl0IGxlYWYudmlldy5zYXZlKCk7XG4gICAgfVxuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBYUEsU0FBUyxvQkFBb0I7QUFDN0I7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBTVAsU0FBUyx3QkFBd0I7QUFDakMsU0FBUyxzQkFBc0I7QUFDL0IsU0FBUyxZQUFZO0FBQ3JCLFNBQVMsOEJBQThCO0FBQ3ZDO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsd0JBQXdCO0FBQ2pDLFNBQVMsc0JBQXNCO0FBQy9CLFNBQVMsZ0JBQWdCO0FBb0J6QixlQUFzQix5QkFB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
|