obsidian-dev-utils 77.1.0 → 78.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/dev/main.js +588 -239
- package/dist/lib/cjs/async.cjs +15 -1
- package/dist/lib/cjs/async.d.cts +8 -0
- package/dist/lib/cjs/html-element.cjs +16 -3
- package/dist/lib/cjs/html-element.d.cts +7 -0
- package/dist/lib/cjs/library.cjs +1 -1
- package/dist/lib/cjs/obsidian/bases-view-registrar.cjs +155 -0
- package/dist/lib/cjs/obsidian/bases-view-registrar.d.cts +52 -0
- package/dist/lib/cjs/obsidian/command-handlers/command-handler.cjs +1 -1
- package/dist/lib/cjs/obsidian/command-handlers/command-handler.d.cts +3 -3
- package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +64 -53
- package/dist/lib/cjs/obsidian/editor-extension-registrar.cjs +155 -0
- package/dist/lib/cjs/obsidian/editor-extension-registrar.d.cts +37 -0
- package/dist/lib/cjs/obsidian/editor-suggest-registrar.cjs +155 -0
- package/dist/lib/cjs/obsidian/editor-suggest-registrar.d.cts +36 -0
- package/dist/lib/cjs/obsidian/extensions-registrar.cjs +155 -0
- package/dist/lib/cjs/obsidian/extensions-registrar.d.cts +51 -0
- package/dist/lib/cjs/obsidian/hover-link-source-registrar.cjs +155 -0
- package/dist/lib/cjs/obsidian/hover-link-source-registrar.d.cts +52 -0
- package/dist/lib/cjs/obsidian/index.cjs +28 -1
- package/dist/lib/cjs/obsidian/index.d.cts +9 -0
- package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.cjs +4 -6
- package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.d.cts +24 -8
- package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.cjs +156 -0
- package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.d.cts +57 -0
- package/dist/lib/cjs/obsidian/markdown.cjs +6 -8
- package/dist/lib/cjs/obsidian/modals/alert.cjs +11 -5
- package/dist/lib/cjs/obsidian/modals/confirm.cjs +11 -5
- package/dist/lib/cjs/obsidian/modals/confirm.d.cts +2 -10
- package/dist/lib/cjs/obsidian/modals/modal.cjs +16 -14
- package/dist/lib/cjs/obsidian/modals/modal.d.cts +22 -11
- package/dist/lib/cjs/obsidian/modals/prompt.cjs +11 -5
- package/dist/lib/cjs/obsidian/modals/prompt.d.cts +2 -6
- package/dist/lib/cjs/obsidian/modals/select-item.cjs +23 -16
- package/dist/lib/cjs/obsidian/modals/select-item.d.cts +3 -11
- package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.cjs +5 -6
- package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.d.cts +23 -10
- package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.cjs +156 -0
- package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.d.cts +64 -0
- package/dist/lib/cjs/obsidian/ribbon-icon-registrar.cjs +156 -0
- package/dist/lib/cjs/obsidian/ribbon-icon-registrar.d.cts +60 -0
- package/dist/lib/cjs/obsidian/setting-components/date-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/date-time-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/email-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/file-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/month-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/multiple-email-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/multiple-file-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/number-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/password-component.cjs +8 -4
- package/dist/lib/cjs/obsidian/setting-components/password-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/telephone-component.cjs +8 -4
- package/dist/lib/cjs/obsidian/setting-components/telephone-component.d.cts +2 -2
- package/dist/lib/cjs/obsidian/setting-components/time-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/typed-text-component.cjs +6 -8
- package/dist/lib/cjs/obsidian/setting-components/typed-text-component.d.cts +19 -4
- package/dist/lib/cjs/obsidian/setting-components/url-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/setting-components/week-component.cjs +6 -2
- package/dist/lib/cjs/obsidian/status-bar-item-registrar.cjs +153 -0
- package/dist/lib/cjs/obsidian/status-bar-item-registrar.d.cts +32 -0
- package/dist/lib/cjs/obsidian/view-registrar.cjs +4 -5
- package/dist/lib/cjs/obsidian/view-registrar.d.cts +20 -7
- package/dist/lib/cjs/script-utils/linters/over-exposure.cjs +241 -68
- package/dist/lib/cjs/script-utils/linters/over-exposure.d.cts +59 -6
- package/dist/lib/esm/async.d.mts +8 -0
- package/dist/lib/esm/async.mjs +14 -1
- package/dist/lib/esm/html-element.d.mts +7 -0
- package/dist/lib/esm/html-element.mjs +14 -2
- package/dist/lib/esm/library.mjs +1 -1
- package/dist/lib/esm/obsidian/bases-view-registrar.d.mts +52 -0
- package/dist/lib/esm/obsidian/bases-view-registrar.mjs +47 -0
- package/dist/lib/esm/obsidian/command-handlers/command-handler.d.mts +3 -3
- package/dist/lib/esm/obsidian/command-handlers/command-handler.mjs +1 -1
- package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +64 -53
- package/dist/lib/esm/obsidian/editor-extension-registrar.d.mts +37 -0
- package/dist/lib/esm/obsidian/editor-extension-registrar.mjs +47 -0
- package/dist/lib/esm/obsidian/editor-suggest-registrar.d.mts +36 -0
- package/dist/lib/esm/obsidian/editor-suggest-registrar.mjs +50 -0
- package/dist/lib/esm/obsidian/extensions-registrar.d.mts +51 -0
- package/dist/lib/esm/obsidian/extensions-registrar.mjs +47 -0
- package/dist/lib/esm/obsidian/hover-link-source-registrar.d.mts +52 -0
- package/dist/lib/esm/obsidian/hover-link-source-registrar.mjs +47 -0
- package/dist/lib/esm/obsidian/index.d.mts +9 -0
- package/dist/lib/esm/obsidian/index.mjs +19 -1
- package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.d.mts +24 -8
- package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.mjs +4 -6
- package/dist/lib/esm/obsidian/markdown-post-processor-registrar.d.mts +57 -0
- package/dist/lib/esm/obsidian/markdown-post-processor-registrar.mjs +48 -0
- package/dist/lib/esm/obsidian/markdown.mjs +10 -9
- package/dist/lib/esm/obsidian/modals/alert.mjs +11 -6
- package/dist/lib/esm/obsidian/modals/confirm.d.mts +2 -10
- package/dist/lib/esm/obsidian/modals/confirm.mjs +11 -6
- package/dist/lib/esm/obsidian/modals/modal.d.mts +22 -11
- package/dist/lib/esm/obsidian/modals/modal.mjs +16 -13
- package/dist/lib/esm/obsidian/modals/prompt.d.mts +2 -6
- package/dist/lib/esm/obsidian/modals/prompt.mjs +11 -6
- package/dist/lib/esm/obsidian/modals/select-item.d.mts +3 -11
- package/dist/lib/esm/obsidian/modals/select-item.mjs +23 -16
- package/dist/lib/esm/obsidian/obsidian-protocol-handler-registrar.d.mts +23 -10
- package/dist/lib/esm/obsidian/obsidian-protocol-handler-registrar.mjs +5 -6
- package/dist/lib/esm/obsidian/plugin-cli-handler-registrar.d.mts +64 -0
- package/dist/lib/esm/obsidian/plugin-cli-handler-registrar.mjs +48 -0
- package/dist/lib/esm/obsidian/ribbon-icon-registrar.d.mts +60 -0
- package/dist/lib/esm/obsidian/ribbon-icon-registrar.mjs +48 -0
- package/dist/lib/esm/obsidian/setting-components/date-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/date-time-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/email-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/file-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/month-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-email-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/multiple-file-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/number-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/password-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/password-component.mjs +8 -4
- package/dist/lib/esm/obsidian/setting-components/telephone-component.d.mts +2 -2
- package/dist/lib/esm/obsidian/setting-components/telephone-component.mjs +8 -4
- package/dist/lib/esm/obsidian/setting-components/time-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/typed-text-component.d.mts +19 -4
- package/dist/lib/esm/obsidian/setting-components/typed-text-component.mjs +6 -8
- package/dist/lib/esm/obsidian/setting-components/url-component.mjs +6 -2
- package/dist/lib/esm/obsidian/setting-components/week-component.mjs +6 -2
- package/dist/lib/esm/obsidian/status-bar-item-registrar.d.mts +32 -0
- package/dist/lib/esm/obsidian/status-bar-item-registrar.mjs +45 -0
- package/dist/lib/esm/obsidian/view-registrar.d.mts +20 -7
- package/dist/lib/esm/obsidian/view-registrar.mjs +4 -5
- package/dist/lib/esm/script-utils/linters/over-exposure.d.mts +59 -6
- package/dist/lib/esm/script-utils/linters/over-exposure.mjs +242 -68
- package/dist/scripts/linters/over-exposure/find-overexposed-fix.ts +12 -0
- package/obsidian/bases-view-registrar/package.json +6 -0
- package/obsidian/editor-extension-registrar/package.json +6 -0
- package/obsidian/editor-suggest-registrar/package.json +6 -0
- package/obsidian/extensions-registrar/package.json +6 -0
- package/obsidian/hover-link-source-registrar/package.json +6 -0
- package/obsidian/markdown-post-processor-registrar/package.json +6 -0
- package/obsidian/plugin-cli-handler-registrar/package.json +6 -0
- package/obsidian/ribbon-icon-registrar/package.json +6 -0
- package/obsidian/status-bar-item-registrar/package.json +6 -0
- package/package.json +1 -1
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/// <reference path="../library.d.mts" />
|
|
2
|
+
/**
|
|
3
|
+
* @file
|
|
4
|
+
*
|
|
5
|
+
* Markdown post processor registrars.
|
|
6
|
+
*/
|
|
7
|
+
import type { MarkdownPostProcessorContext } from 'obsidian';
|
|
8
|
+
import type { Promisable } from 'type-fest';
|
|
9
|
+
import { Plugin } from 'obsidian';
|
|
10
|
+
/**
|
|
11
|
+
* Markdown post processor registrar.
|
|
12
|
+
*/
|
|
13
|
+
export interface MarkdownPostProcessorRegistrar {
|
|
14
|
+
/**
|
|
15
|
+
* Registers a markdown post processor.
|
|
16
|
+
*
|
|
17
|
+
* @param params - The parameters for the markdown post processor registration.
|
|
18
|
+
*/
|
|
19
|
+
registerMarkdownPostProcessor(params: MarkdownPostProcessorRegistrarRegisterMarkdownPostProcessorParams): void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Parameters for registering a markdown post processor.
|
|
23
|
+
*/
|
|
24
|
+
export interface MarkdownPostProcessorRegistrarRegisterMarkdownPostProcessorParams {
|
|
25
|
+
/**
|
|
26
|
+
* Post processor function to register.
|
|
27
|
+
*
|
|
28
|
+
* @param el - The HTML element to process.
|
|
29
|
+
* @param ctx - The markdown post processor context.
|
|
30
|
+
* @returns A promisable that resolves when the post processing is complete.
|
|
31
|
+
*/
|
|
32
|
+
postProcessor(el: HTMLElement, ctx: MarkdownPostProcessorContext): Promisable<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Optional sort order for the post processor. Lower numbers are processed first. Default is 0.
|
|
35
|
+
*/
|
|
36
|
+
readonly sortOrder?: number;
|
|
37
|
+
}
|
|
38
|
+
type PluginMarkdownPostProcessorRegistrarRegisterMarkdownPostProcessorParams = MarkdownPostProcessorRegistrarRegisterMarkdownPostProcessorParams;
|
|
39
|
+
/**
|
|
40
|
+
* Markdown post processor registrar in an Obsidian plugin.
|
|
41
|
+
*/
|
|
42
|
+
export declare class PluginMarkdownPostProcessorRegistrar implements MarkdownPostProcessorRegistrar {
|
|
43
|
+
private readonly plugin;
|
|
44
|
+
/**
|
|
45
|
+
* Creates a new instance of the {@link PluginMarkdownPostProcessorRegistrar} class.
|
|
46
|
+
*
|
|
47
|
+
* @param plugin - The Obsidian plugin instance.
|
|
48
|
+
*/
|
|
49
|
+
constructor(plugin: Plugin);
|
|
50
|
+
/**
|
|
51
|
+
* Registers a markdown post processor.
|
|
52
|
+
*
|
|
53
|
+
* @param params - The parameters for the markdown post processor registration.
|
|
54
|
+
*/
|
|
55
|
+
registerMarkdownPostProcessor(params: PluginMarkdownPostProcessorRegistrarRegisterMarkdownPostProcessorParams): void;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
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() {
|
|
7
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
8
|
+
if (globalThis.process) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const browserProcess = {
|
|
13
|
+
browser: true,
|
|
14
|
+
cwd() {
|
|
15
|
+
return '/';
|
|
16
|
+
},
|
|
17
|
+
env: {},
|
|
18
|
+
platform: 'android'
|
|
19
|
+
};
|
|
20
|
+
// eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
|
|
21
|
+
globalThis.process = browserProcess;
|
|
22
|
+
})();
|
|
23
|
+
|
|
24
|
+
import { Plugin } from "obsidian";
|
|
25
|
+
import { normalizePromisable } from "../async.mjs";
|
|
26
|
+
class PluginMarkdownPostProcessorRegistrar {
|
|
27
|
+
/**
|
|
28
|
+
* Creates a new instance of the {@link PluginMarkdownPostProcessorRegistrar} class.
|
|
29
|
+
*
|
|
30
|
+
* @param plugin - The Obsidian plugin instance.
|
|
31
|
+
*/
|
|
32
|
+
constructor(plugin) {
|
|
33
|
+
this.plugin = plugin;
|
|
34
|
+
}
|
|
35
|
+
plugin;
|
|
36
|
+
/**
|
|
37
|
+
* Registers a markdown post processor.
|
|
38
|
+
*
|
|
39
|
+
* @param params - The parameters for the markdown post processor registration.
|
|
40
|
+
*/
|
|
41
|
+
registerMarkdownPostProcessor(params) {
|
|
42
|
+
this.plugin.registerMarkdownPostProcessor((el, ctx) => normalizePromisable(params.postProcessor(el, ctx)), params.sortOrder);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
export {
|
|
46
|
+
PluginMarkdownPostProcessorRegistrar
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21hcmtkb3duLXBvc3QtcHJvY2Vzc29yLXJlZ2lzdHJhci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIE1hcmtkb3duIHBvc3QgcHJvY2Vzc29yIHJlZ2lzdHJhcnMuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBNYXJrZG93blBvc3RQcm9jZXNzb3JDb250ZXh0IH0gZnJvbSAnb2JzaWRpYW4nO1xuaW1wb3J0IHR5cGUgeyBQcm9taXNhYmxlIH0gZnJvbSAndHlwZS1mZXN0JztcblxuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBub3JtYWxpemVQcm9taXNhYmxlIH0gZnJvbSAnLi4vYXN5bmMudHMnO1xuXG4vKipcbiAqIE1hcmtkb3duIHBvc3QgcHJvY2Vzc29yIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXIge1xuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgbWFya2Rvd24gcG9zdCBwcm9jZXNzb3IuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIG1hcmtkb3duIHBvc3QgcHJvY2Vzc29yIHJlZ2lzdHJhdGlvbi5cbiAgICovXG4gIHJlZ2lzdGVyTWFya2Rvd25Qb3N0UHJvY2Vzc29yKHBhcmFtczogTWFya2Rvd25Qb3N0UHJvY2Vzc29yUmVnaXN0cmFyUmVnaXN0ZXJNYXJrZG93blBvc3RQcm9jZXNzb3JQYXJhbXMpOiB2b2lkO1xufVxuXG4vKipcbiAqIFBhcmFtZXRlcnMgZm9yIHJlZ2lzdGVyaW5nIGEgbWFya2Rvd24gcG9zdCBwcm9jZXNzb3IuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFya2Rvd25Qb3N0UHJvY2Vzc29yUmVnaXN0cmFyUmVnaXN0ZXJNYXJrZG93blBvc3RQcm9jZXNzb3JQYXJhbXMge1xuICAvKipcbiAgICogUG9zdCBwcm9jZXNzb3IgZnVuY3Rpb24gdG8gcmVnaXN0ZXIuXG4gICAqXG4gICAqIEBwYXJhbSBlbCAtIFRoZSBIVE1MIGVsZW1lbnQgdG8gcHJvY2Vzcy5cbiAgICogQHBhcmFtIGN0eCAtIFRoZSBtYXJrZG93biBwb3N0IHByb2Nlc3NvciBjb250ZXh0LlxuICAgKiBAcmV0dXJucyBBIHByb21pc2FibGUgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBwb3N0IHByb2Nlc3NpbmcgaXMgY29tcGxldGUuXG4gICAqL1xuICBwb3N0UHJvY2Vzc29yKGVsOiBIVE1MRWxlbWVudCwgY3R4OiBNYXJrZG93blBvc3RQcm9jZXNzb3JDb250ZXh0KTogUHJvbWlzYWJsZTx2b2lkPjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgc29ydCBvcmRlciBmb3IgdGhlIHBvc3QgcHJvY2Vzc29yLiBMb3dlciBudW1iZXJzIGFyZSBwcm9jZXNzZWQgZmlyc3QuIERlZmF1bHQgaXMgMC5cbiAgICovXG4gIHJlYWRvbmx5IHNvcnRPcmRlcj86IG51bWJlcjtcbn1cblxudHlwZSBQbHVnaW5NYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXJSZWdpc3Rlck1hcmtkb3duUG9zdFByb2Nlc3NvclBhcmFtcyA9IE1hcmtkb3duUG9zdFByb2Nlc3NvclJlZ2lzdHJhclJlZ2lzdGVyTWFya2Rvd25Qb3N0UHJvY2Vzc29yUGFyYW1zO1xuXG4vKipcbiAqIE1hcmtkb3duIHBvc3QgcHJvY2Vzc29yIHJlZ2lzdHJhciBpbiBhbiBPYnNpZGlhbiBwbHVnaW4uXG4gKi9cbmV4cG9ydCBjbGFzcyBQbHVnaW5NYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXIgaW1wbGVtZW50cyBNYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpbk1hcmtkb3duUG9zdFByb2Nlc3NvclJlZ2lzdHJhcn0gY2xhc3MuXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgT2JzaWRpYW4gcGx1Z2luIGluc3RhbmNlLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcGx1Z2luOiBQbHVnaW4pIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIG1hcmtkb3duIHBvc3QgcHJvY2Vzc29yLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBtYXJrZG93biBwb3N0IHByb2Nlc3NvciByZWdpc3RyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJNYXJrZG93blBvc3RQcm9jZXNzb3IocGFyYW1zOiBQbHVnaW5NYXJrZG93blBvc3RQcm9jZXNzb3JSZWdpc3RyYXJSZWdpc3Rlck1hcmtkb3duUG9zdFByb2Nlc3NvclBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2luLnJlZ2lzdGVyTWFya2Rvd25Qb3N0UHJvY2Vzc29yKChlbCwgY3R4KSA9PiBub3JtYWxpemVQcm9taXNhYmxlKHBhcmFtcy5wb3N0UHJvY2Vzc29yKGVsLCBjdHgpKSwgcGFyYW1zLnNvcnRPcmRlcik7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU0EsU0FBUyxjQUFjO0FBRXZCLFNBQVMsMkJBQTJCO0FBc0M3QixNQUFNLHFDQUErRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1uRixZQUE2QixRQUFnQjtBQUFoQjtBQUFBLEVBQWlCO0FBQUEsRUFBakI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPN0IsOEJBQThCLFFBQXVGO0FBQzFILFNBQUssT0FBTyw4QkFBOEIsQ0FBQyxJQUFJLFFBQVEsb0JBQW9CLE9BQU8sY0FBYyxJQUFJLEdBQUcsQ0FBQyxHQUFHLE9BQU8sU0FBUztBQUFBLEVBQzdIO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -73,7 +73,11 @@ import {
|
|
|
73
73
|
MarkdownPreviewRenderer,
|
|
74
74
|
MarkdownRenderer
|
|
75
75
|
} from "obsidian";
|
|
76
|
-
import {
|
|
76
|
+
import { invokeAsyncSafely } from "../async.mjs";
|
|
77
|
+
import {
|
|
78
|
+
getZIndex,
|
|
79
|
+
waitUntilConnected
|
|
80
|
+
} from "../html-element.mjs";
|
|
77
81
|
import { MonkeyAroundComponent } from "./components/monkey-around-component.mjs";
|
|
78
82
|
import { getDomEventsHandlersConstructor } from "./constructors/getDomEventsHandlersConstructor.mjs";
|
|
79
83
|
import {
|
|
@@ -104,7 +108,6 @@ class EmbedByExtensionMdPatchComponent extends MonkeyAroundComponent {
|
|
|
104
108
|
}
|
|
105
109
|
class FixedZIndexDomEventsHandlersInfo {
|
|
106
110
|
app;
|
|
107
|
-
el;
|
|
108
111
|
path;
|
|
109
112
|
get hoverPopover() {
|
|
110
113
|
return this._hoverPopover;
|
|
@@ -118,18 +121,16 @@ class FixedZIndexDomEventsHandlersInfo {
|
|
|
118
121
|
}
|
|
119
122
|
}
|
|
120
123
|
_hoverPopover = null;
|
|
124
|
+
el;
|
|
121
125
|
zIndex;
|
|
122
126
|
constructor(params) {
|
|
123
127
|
this.app = params.app;
|
|
124
128
|
this.path = params.path;
|
|
125
129
|
this.el = params.el;
|
|
126
|
-
|
|
130
|
+
invokeAsyncSafely(async () => {
|
|
131
|
+
await waitUntilConnected(this.el);
|
|
127
132
|
this.updateZIndex(this.el);
|
|
128
|
-
}
|
|
129
|
-
this.el.onNodeInserted(() => {
|
|
130
|
-
this.updateZIndex(this.el);
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
+
});
|
|
133
134
|
}
|
|
134
135
|
updateZIndex(el) {
|
|
135
136
|
this.zIndex = getZIndex(el) + 1;
|
|
@@ -225,4 +226,4 @@ export {
|
|
|
225
226
|
renderExternalLink,
|
|
226
227
|
renderInternalLink
|
|
227
228
|
};
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21hcmtkb3duLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHByb2Nlc3NpbmcgTWFya2Rvd24gY29udGVudCBpbiBPYnNpZGlhbi5cbiAqL1xuXG4vKiB2OCBpZ25vcmUgc3RhcnQgLS0gRGVlcGx5IGNvdXBsZWQgdG8gT2JzaWRpYW4gcnVudGltZTsgcmVxdWlyZXMgcnVubmluZyB2YXVsdCBmb3IgbWVhbmluZ2Z1bCB0ZXN0aW5nLiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIERvbUV2ZW50c0hhbmRsZXJzLFxuICBEb21FdmVudHNIYW5kbGVyc0luZm8sXG4gIEVtYmVkUmVnaXN0cnlFbWJlZEJ5RXh0ZW5zaW9uUmVjb3JkXG59IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QnO1xuaW1wb3J0IHR5cGUgeyBFeHRyYWN0Q29uc3RydWN0b3IgfSBmcm9tICdAb2JzaWRpYW4tdHlwaW5ncy9vYnNpZGlhbi1wdWJsaWMtbGF0ZXN0L2ltcGxlbWVudGF0aW9ucyc7XG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgSW50ZXJuYWxQbHVnaW5OYW1lIH0gZnJvbSAnQG9ic2lkaWFuLXR5cGluZ3Mvb2JzaWRpYW4tcHVibGljLWxhdGVzdC9pbXBsZW1lbnRhdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3ZlclBvcG92ZXIsXG4gIE1hcmtkb3duUHJldmlld1JlbmRlcmVyLFxuICBNYXJrZG93blJlbmRlcmVyXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBQYXRoT3JBYnN0cmFjdEZpbGUgfSBmcm9tICcuL2ZpbGUtc3lzdGVtLnRzJztcblxuaW1wb3J0IHsgZ2V0WkluZGV4IH0gZnJvbSAnLi4vaHRtbC1lbGVtZW50LnRzJztcbmltcG9ydCB7IE1vbmtleUFyb3VuZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb25rZXktYXJvdW5kLWNvbXBvbmVudC50cyc7XG5pbXBvcnQgeyBnZXREb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3RvcnMvZ2V0RG9tRXZlbnRzSGFuZGxlcnNDb25zdHJ1Y3Rvci50cyc7XG5pbXBvcnQge1xuICBnZXRBYnN0cmFjdEZpbGVPck51bGwsXG4gIGdldFBhdGgsXG4gIGlzRm9sZGVyXG59IGZyb20gJy4vZmlsZS1zeXN0ZW0udHMnO1xuXG50eXBlIERvbUV2ZW50c0hhbmRsZXJzQ29uc3RydWN0b3IgPSBFeHRyYWN0Q29uc3RydWN0b3I8RG9tRXZlbnRzSGFuZGxlcnM+O1xuXG5sZXQgZG9tRXZlbnRzSGFuZGxlcnNDb25zdHJ1Y3RvcjogRG9tRXZlbnRzSGFuZGxlcnNDb25zdHJ1Y3RvciB8IG51bGwgPSBudWxsO1xuXG4vKipcbiAqIFRoZSBwYXJhbXMgZm9yIHRoZSBmdWxsIHJlbmRlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGdWxsUmVuZGVyUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIENvbXBvbmVudCBpbnN0YW5jZSB0byB1c2UgZm9yIHRoZSByZW5kZXIuXG4gICAqL1xuICByZWFkb25seSBjb21wb25lbnQ/OiBDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBIVE1MRWxlbWVudCB0byByZW5kZXIgdG8uXG4gICAqL1xuICByZWFkb25seSBlbDogSFRNTEVsZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBNYXJrZG93biBzdHJpbmcgdG8gcmVuZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgbWFya2Rvd246IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0byByZWdpc3RlciBsaW5rIGhhbmRsZXJzIGZvciB0aGUgcmVuZGVyZWQgZWxlbWVudC5cbiAgICovXG4gIHJlYWRvbmx5IHNob3VsZFJlZ2lzdGVyTGlua0hhbmRsZXJzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSBwYXRoIHRvIHJlc29sdmUgcmVsYXRpdmUgbGlua3MuXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VQYXRoPzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgRml4ZWRaSW5kZXhEb21FdmVudHNIYW5kbGVyc0luZm9Db25zdHJ1Y3RvclBhcmFtcyB7XG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuICByZWFkb25seSBlbDogSFRNTEVsZW1lbnQ7XG4gIHJlYWRvbmx5IHBhdGg6IHN0cmluZztcbn1cblxuY2xhc3MgRW1iZWRCeUV4dGVuc2lvbk1kUGF0Y2hDb21wb25lbnQgZXh0ZW5kcyBNb25rZXlBcm91bmRDb21wb25lbnQge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbWJlZEJ5RXh0ZW5zaW9uOiBFbWJlZFJlZ2lzdHJ5RW1iZWRCeUV4dGVuc2lvblJlY29yZCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25sb2FkKCk6IHZvaWQge1xuICAgIHRoaXMucmVnaXN0ZXJNZXRob2RQYXRjaCh7XG4gICAgICBtZXRob2ROYW1lOiAnbWQnLFxuICAgICAgb2JqOiB0aGlzLmVtYmVkQnlFeHRlbnNpb24sXG4gICAgICBwYXRjaEhhbmRsZXI6ICh7XG4gICAgICAgIGZhbGxiYWNrLFxuICAgICAgICBvcmlnaW5hbEFyZ3M6IFtjb250ZXh0XVxuICAgICAgfSkgPT4ge1xuICAgICAgICBjb250ZXh0LmRpc3BsYXlNb2RlID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBmYWxsYmFjaygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbmNsYXNzIEZpeGVkWkluZGV4RG9tRXZlbnRzSGFuZGxlcnNJbmZvIGltcGxlbWVudHMgRG9tRXZlbnRzSGFuZGxlcnNJbmZvIHtcbiAgcHVibGljIHJlYWRvbmx5IGFwcDogQXBwO1xuICBwdWJsaWMgcmVhZG9ubHkgZWw6IEhUTUxFbGVtZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgcGF0aDogc3RyaW5nO1xuXG4gIHB1YmxpYyBnZXQgaG92ZXJQb3BvdmVyKCk6IEhvdmVyUG9wb3ZlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9ob3ZlclBvcG92ZXI7XG4gIH1cblxuICBwdWJsaWMgc2V0IGhvdmVyUG9wb3Zlcihob3ZlclBvcG92ZXI6IEhvdmVyUG9wb3ZlciB8IG51bGwpIHtcbiAgICB0aGlzLl9ob3ZlclBvcG92ZXIgPSBob3ZlclBvcG92ZXI7XG4gICAgaWYgKGhvdmVyUG9wb3ZlciAmJiB0aGlzLnpJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBob3ZlclBvcG92ZXIuaG92ZXJFbC5zZXRDc3NTdHlsZXMoe1xuICAgICAgICB6SW5kZXg6IFN0cmluZyh0aGlzLnpJbmRleClcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hvdmVyUG9wb3ZlcjogSG92ZXJQb3BvdmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSB6SW5kZXg/OiBudW1iZXI7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhcmFtczogRml4ZWRaSW5kZXhEb21FdmVudHNIYW5kbGVyc0luZm9Db25zdHJ1Y3RvclBhcmFtcykge1xuICAgIHRoaXMuYXBwID0gcGFyYW1zLmFwcDtcbiAgICB0aGlzLnBhdGggPSBwYXJhbXMucGF0aDtcbiAgICB0aGlzLmVsID0gcGFyYW1zLmVsO1xuXG4gICAgaWYgKHRoaXMuZWwuaXNDb25uZWN0ZWQpIHtcbiAgICAgIHRoaXMudXBkYXRlWkluZGV4KHRoaXMuZWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVsLm9uTm9kZUluc2VydGVkKCgpID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVaSW5kZXgodGhpcy5lbCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVpJbmRleChlbDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLnpJbmRleCA9IGdldFpJbmRleChlbCkgKyAxO1xuICB9XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBtYXJrZG93biBhbmQgZW1iZWRzLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIGZ1bGwgcmVuZGVyLlxuICogQHJldHVybnMgVGhlIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGZ1bGwgcmVuZGVyIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZnVsbFJlbmRlcihwYXJhbXM6IEZ1bGxSZW5kZXJQYXJhbXMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgc291cmNlUGF0aCA9IHBhcmFtcy5zb3VyY2VQYXRoID8/ICcvJztcbiAgbGV0IHNob3VsZFVubG9hZENvbXBvbmVudCA9IGZhbHNlO1xuICBsZXQgY29tcG9uZW50OiBDb21wb25lbnQ7XG4gIGlmIChwYXJhbXMuY29tcG9uZW50KSB7XG4gICAgY29tcG9uZW50ID0gcGFyYW1zLmNvbXBvbmVudDtcbiAgfSBlbHNlIHtcbiAgICBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50KCk7XG4gICAgY29tcG9uZW50LmxvYWQoKTtcbiAgICBzaG91bGRVbmxvYWRDb21wb25lbnQgPSB0cnVlO1xuICB9XG5cbiAgdXNpbmcgXyA9IGNvbXBvbmVudC5hZGRDaGlsZChuZXcgRW1iZWRCeUV4dGVuc2lvbk1kUGF0Y2hDb21wb25lbnQocGFyYW1zLmFwcC5lbWJlZFJlZ2lzdHJ5LmVtYmVkQnlFeHRlbnNpb24pKTtcblxuICBhd2FpdCBNYXJrZG93blJlbmRlcmVyLnJlbmRlcihwYXJhbXMuYXBwLCBwYXJhbXMubWFya2Rvd24sIHBhcmFtcy5lbCwgc291cmNlUGF0aCwgY29tcG9uZW50KTtcblxuICBpZiAoc2hvdWxkVW5sb2FkQ29tcG9uZW50KSB7XG4gICAgY29tcG9uZW50LnVubG9hZCgpO1xuICB9XG5cbiAgaWYgKHBhcmFtcy5zaG91bGRSZWdpc3RlckxpbmtIYW5kbGVycykge1xuICAgIGF3YWl0IHJlZ2lzdGVyTGlua0hhbmRsZXJzKHBhcmFtcy5hcHAsIHBhcmFtcy5lbCwgcGFyYW1zLnNvdXJjZVBhdGgpO1xuICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgTWFya2Rvd24gdG8gSFRNTC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBtYXJrZG93biAtIFRoZSBNYXJrZG93biBzdHJpbmcgdG8gY29udmVydC5cbiAqIEBwYXJhbSBzb3VyY2VQYXRoIC0gKG9wdGlvbmFsKSBUaGUgc291cmNlIHBhdGggdG8gcmVzb2x2ZSByZWxhdGl2ZSBsaW5rcy5cbiAqIEByZXR1cm5zIFRoZSBIVE1MIHN0cmluZy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1hcmtkb3duVG9IdG1sKGFwcDogQXBwLCBtYXJrZG93bjogc3RyaW5nLCBzb3VyY2VQYXRoPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgY29tcG9uZW50ID0gbmV3IENvbXBvbmVudCgpO1xuICBjb21wb25lbnQubG9hZCgpO1xuICBjb25zdCByZW5kZXJEaXYgPSBjcmVhdGVEaXYoKTtcbiAgYXdhaXQgTWFya2Rvd25SZW5kZXJlci5yZW5kZXIoYXBwLCBtYXJrZG93biwgcmVuZGVyRGl2LCBzb3VyY2VQYXRoID8/ICcnLCBjb21wb25lbnQpO1xuICBjb25zdCBodG1sID0gcmVuZGVyRGl2LmlubmVySFRNTDtcbiAgY29tcG9uZW50LnVubG9hZCgpO1xuICByZXR1cm4gaHRtbDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgbGluayBoYW5kbGVycyBmb3IgdGhlIGdpdmVuIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZWwgLSBUaGUgSFRNTEVsZW1lbnQgdG8gcmVnaXN0ZXIgbGluayBoYW5kbGVycyBmb3IuXG4gKiBAcGFyYW0gc291cmNlUGF0aCAtIFRoZSBzb3VyY2UgcGF0aCB0byByZXNvbHZlIHJlbGF0aXZlIGxpbmtzIGZyb20uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWdpc3RlckxpbmtIYW5kbGVycyhhcHA6IEFwcCwgZWw6IEhUTUxFbGVtZW50LCBzb3VyY2VQYXRoPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF0b21pYy11cGRhdGVzIC0tIE5vIHJhY2UgY29uZGl0aW9uLlxuICBkb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yID8/PSBhd2FpdCBnZXREb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yKGFwcCk7XG4gIE1hcmtkb3duUHJldmlld1JlbmRlcmVyLnJlZ2lzdGVyRG9tRXZlbnRzKFxuICAgIGVsLFxuICAgIG5ldyBkb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yKFxuICAgICAgbmV3IEZpeGVkWkluZGV4RG9tRXZlbnRzSGFuZGxlcnNJbmZvKHtcbiAgICAgICAgYXBwLFxuICAgICAgICBlbCxcbiAgICAgICAgcGF0aDogc291cmNlUGF0aCA/PyAnJ1xuICAgICAgfSlcbiAgICApXG4gICk7XG59XG5cbi8qKlxuICogUmVuZGVycyBhbiBleHRlcm5hbCBsaW5rLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHVybCAtIFRoZSBVUkwgdG8gcmVuZGVyIHRoZSBleHRlcm5hbCBsaW5rIGZvci5cbiAqIEBwYXJhbSBkaXNwbGF5VGV4dCAtIFRoZSB0ZXh0IHRvIGRpc3BsYXkgZm9yIHRoZSBleHRlcm5hbCBsaW5rLlxuICogQHJldHVybnMgVGhlIEhUTUxBbmNob3JFbGVtZW50IGNvbnRhaW5pbmcgdGhlIHJlbmRlcmVkIGV4dGVybmFsIGxpbmsuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW5kZXJFeHRlcm5hbExpbmsoYXBwOiBBcHAsIHVybDogc3RyaW5nLCBkaXNwbGF5VGV4dD86IHN0cmluZyk6IFByb21pc2U8SFRNTEFuY2hvckVsZW1lbnQ+IHtcbiAgZGlzcGxheVRleHQgPz89IHVybDtcbiAgY29uc3Qgd3JhcHBlckVsID0gY3JlYXRlU3BhbigpO1xuICBhd2FpdCBmdWxsUmVuZGVyKHtcbiAgICBhcHAsXG4gICAgZWw6IHdyYXBwZXJFbCxcbiAgICBtYXJrZG93bjogYFske2Rpc3BsYXlUZXh0fV0oJHt1cmx9KWBcbiAgfSk7XG4gIGNvbnN0IGFFbCA9IHdyYXBwZXJFbC5maW5kKCdhJykgYXMgSFRNTEFuY2hvckVsZW1lbnQ7XG4gIGF3YWl0IHJlZ2lzdGVyTGlua0hhbmRsZXJzKGFwcCwgYUVsKTtcbiAgcmV0dXJuIGFFbDtcbn1cblxuLyoqXG4gKiBSZW5kZXJzIGFuIGludGVybmFsIGxpbmsuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yQWJzdHJhY3RGaWxlIC0gVGhlIHBhdGggb3IgYWJzdHJhY3QgZmlsZSB0byByZW5kZXIgdGhlIGludGVybmFsIGxpbmsgZm9yLlxuICogQHBhcmFtIGRpc3BsYXlUZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBmb3IgdGhlIGludGVybmFsIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgSFRNTEFuY2hvckVsZW1lbnQgY29udGFpbmluZyB0aGUgcmVuZGVyZWQgaW50ZXJuYWwgbGluay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmRlckludGVybmFsTGluayhhcHA6IEFwcCwgcGF0aE9yQWJzdHJhY3RGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUsIGRpc3BsYXlUZXh0Pzogc3RyaW5nKTogUHJvbWlzZTxIVE1MQW5jaG9yRWxlbWVudD4ge1xuICBjb25zdCBhYnN0cmFjdEZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JBYnN0cmFjdEZpbGUpO1xuICBjb25zdCBwYXRoID0gZ2V0UGF0aChhcHAsIHBhdGhPckFic3RyYWN0RmlsZSk7XG4gIGRpc3BsYXlUZXh0ID8/PSBwYXRoO1xuICBpZiAoaXNGb2xkZXIoYWJzdHJhY3RGaWxlKSkge1xuICAgIHJldHVybiBjcmVhdGVFbCgnYScsIHsgdGV4dDogZGlzcGxheVRleHQgfSwgKGFFbCkgPT4ge1xuICAgICAgYUVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2dCkgPT4ge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXBwLmludGVybmFsUGx1Z2lucy5nZXRFbmFibGVkUGx1Z2luQnlJZChJbnRlcm5hbFBsdWdpbk5hbWUuRmlsZUV4cGxvcmVyKT8ucmV2ZWFsSW5Gb2xkZXIoYWJzdHJhY3RGaWxlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qgd3JhcHBlckVsID0gY3JlYXRlU3BhbigpO1xuICBhd2FpdCBmdWxsUmVuZGVyKHtcbiAgICBhcHAsXG4gICAgZWw6IHdyYXBwZXJFbCxcbiAgICBtYXJrZG93bjogYFtbJHtwYXRofXwke2Rpc3BsYXlUZXh0fV1dYFxuICB9KTtcbiAgY29uc3QgYUVsID0gd3JhcHBlckVsLmZpbmQoJ2EnKSBhcyBIVE1MQW5jaG9yRWxlbWVudDtcbiAgYXdhaXQgcmVnaXN0ZXJMaW5rSGFuZGxlcnMoYXBwLCBhRWwpO1xuICByZXR1cm4gYUVsO1xufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFnQkEsU0FBUywwQkFBMEI7QUFDbkM7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUlQLFNB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
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21hcmtkb3duLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHByb2Nlc3NpbmcgTWFya2Rvd24gY29udGVudCBpbiBPYnNpZGlhbi5cbiAqL1xuXG4vKiB2OCBpZ25vcmUgc3RhcnQgLS0gRGVlcGx5IGNvdXBsZWQgdG8gT2JzaWRpYW4gcnVudGltZTsgcmVxdWlyZXMgcnVubmluZyB2YXVsdCBmb3IgbWVhbmluZ2Z1bCB0ZXN0aW5nLiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIERvbUV2ZW50c0hhbmRsZXJzLFxuICBEb21FdmVudHNIYW5kbGVyc0luZm8sXG4gIEVtYmVkUmVnaXN0cnlFbWJlZEJ5RXh0ZW5zaW9uUmVjb3JkXG59IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QnO1xuaW1wb3J0IHR5cGUgeyBFeHRyYWN0Q29uc3RydWN0b3IgfSBmcm9tICdAb2JzaWRpYW4tdHlwaW5ncy9vYnNpZGlhbi1wdWJsaWMtbGF0ZXN0L2ltcGxlbWVudGF0aW9ucyc7XG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgSW50ZXJuYWxQbHVnaW5OYW1lIH0gZnJvbSAnQG9ic2lkaWFuLXR5cGluZ3Mvb2JzaWRpYW4tcHVibGljLWxhdGVzdC9pbXBsZW1lbnRhdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3ZlclBvcG92ZXIsXG4gIE1hcmtkb3duUHJldmlld1JlbmRlcmVyLFxuICBNYXJrZG93blJlbmRlcmVyXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBQYXRoT3JBYnN0cmFjdEZpbGUgfSBmcm9tICcuL2ZpbGUtc3lzdGVtLnRzJztcblxuaW1wb3J0IHsgaW52b2tlQXN5bmNTYWZlbHkgfSBmcm9tICcuLi9hc3luYy50cyc7XG5pbXBvcnQge1xuICBnZXRaSW5kZXgsXG4gIHdhaXRVbnRpbENvbm5lY3RlZFxufSBmcm9tICcuLi9odG1sLWVsZW1lbnQudHMnO1xuaW1wb3J0IHsgTW9ua2V5QXJvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vbmtleS1hcm91bmQtY29tcG9uZW50LnRzJztcbmltcG9ydCB7IGdldERvbUV2ZW50c0hhbmRsZXJzQ29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9ycy9nZXREb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgZ2V0UGF0aCxcbiAgaXNGb2xkZXJcbn0gZnJvbSAnLi9maWxlLXN5c3RlbS50cyc7XG5cbnR5cGUgRG9tRXZlbnRzSGFuZGxlcnNDb25zdHJ1Y3RvciA9IEV4dHJhY3RDb25zdHJ1Y3RvcjxEb21FdmVudHNIYW5kbGVycz47XG5cbmxldCBkb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yOiBEb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yIHwgbnVsbCA9IG51bGw7XG5cbi8qKlxuICogVGhlIHBhcmFtcyBmb3IgdGhlIGZ1bGwgcmVuZGVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZ1bGxSZW5kZXJQYXJhbXMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgQ29tcG9uZW50IGluc3RhbmNlIHRvIHVzZSBmb3IgdGhlIHJlbmRlci5cbiAgICovXG4gIHJlYWRvbmx5IGNvbXBvbmVudD86IENvbXBvbmVudDtcblxuICAvKipcbiAgICogVGhlIEhUTUxFbGVtZW50IHRvIHJlbmRlciB0by5cbiAgICovXG4gIHJlYWRvbmx5IGVsOiBIVE1MRWxlbWVudDtcblxuICAvKipcbiAgICogVGhlIE1hcmtkb3duIHN0cmluZyB0byByZW5kZXIuXG4gICAqL1xuICByZWFkb25seSBtYXJrZG93bjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHJlZ2lzdGVyIGxpbmsgaGFuZGxlcnMgZm9yIHRoZSByZW5kZXJlZCBlbGVtZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkUmVnaXN0ZXJMaW5rSGFuZGxlcnM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgc291cmNlIHBhdGggdG8gcmVzb2x2ZSByZWxhdGl2ZSBsaW5rcy5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZVBhdGg/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBGaXhlZFpJbmRleERvbUV2ZW50c0hhbmRsZXJzSW5mb0NvbnN0cnVjdG9yUGFyYW1zIHtcbiAgcmVhZG9ubHkgYXBwOiBBcHA7XG4gIHJlYWRvbmx5IGVsOiBIVE1MRWxlbWVudDtcbiAgcmVhZG9ubHkgcGF0aDogc3RyaW5nO1xufVxuXG5jbGFzcyBFbWJlZEJ5RXh0ZW5zaW9uTWRQYXRjaENvbXBvbmVudCBleHRlbmRzIE1vbmtleUFyb3VuZENvbXBvbmVudCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVtYmVkQnlFeHRlbnNpb246IEVtYmVkUmVnaXN0cnlFbWJlZEJ5RXh0ZW5zaW9uUmVjb3JkKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbmxvYWQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWdpc3Rlck1ldGhvZFBhdGNoKHtcbiAgICAgIG1ldGhvZE5hbWU6ICdtZCcsXG4gICAgICBvYmo6IHRoaXMuZW1iZWRCeUV4dGVuc2lvbixcbiAgICAgIHBhdGNoSGFuZGxlcjogKHtcbiAgICAgICAgZmFsbGJhY2ssXG4gICAgICAgIG9yaWdpbmFsQXJnczogW2NvbnRleHRdXG4gICAgICB9KSA9PiB7XG4gICAgICAgIGNvbnRleHQuZGlzcGxheU1vZGUgPSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIGZhbGxiYWNrKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cblxuY2xhc3MgRml4ZWRaSW5kZXhEb21FdmVudHNIYW5kbGVyc0luZm8gaW1wbGVtZW50cyBEb21FdmVudHNIYW5kbGVyc0luZm8ge1xuICBwdWJsaWMgcmVhZG9ubHkgYXBwOiBBcHA7XG4gIHB1YmxpYyByZWFkb25seSBwYXRoOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgaG92ZXJQb3BvdmVyKCk6IEhvdmVyUG9wb3ZlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9ob3ZlclBvcG92ZXI7XG4gIH1cblxuICBwdWJsaWMgc2V0IGhvdmVyUG9wb3Zlcihob3ZlclBvcG92ZXI6IEhvdmVyUG9wb3ZlciB8IG51bGwpIHtcbiAgICB0aGlzLl9ob3ZlclBvcG92ZXIgPSBob3ZlclBvcG92ZXI7XG4gICAgaWYgKGhvdmVyUG9wb3ZlciAmJiB0aGlzLnpJbmRleCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBob3ZlclBvcG92ZXIuaG92ZXJFbC5zZXRDc3NTdHlsZXMoe1xuICAgICAgICB6SW5kZXg6IFN0cmluZyh0aGlzLnpJbmRleClcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hvdmVyUG9wb3ZlcjogSG92ZXJQb3BvdmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbDogSFRNTEVsZW1lbnQ7XG5cbiAgcHJpdmF0ZSB6SW5kZXg/OiBudW1iZXI7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhcmFtczogRml4ZWRaSW5kZXhEb21FdmVudHNIYW5kbGVyc0luZm9Db25zdHJ1Y3RvclBhcmFtcykge1xuICAgIHRoaXMuYXBwID0gcGFyYW1zLmFwcDtcbiAgICB0aGlzLnBhdGggPSBwYXJhbXMucGF0aDtcbiAgICB0aGlzLmVsID0gcGFyYW1zLmVsO1xuXG4gICAgaW52b2tlQXN5bmNTYWZlbHkoYXN5bmMgKCkgPT4ge1xuICAgICAgYXdhaXQgd2FpdFVudGlsQ29ubmVjdGVkKHRoaXMuZWwpO1xuICAgICAgdGhpcy51cGRhdGVaSW5kZXgodGhpcy5lbCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVpJbmRleChlbDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLnpJbmRleCA9IGdldFpJbmRleChlbCkgKyAxO1xuICB9XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBtYXJrZG93biBhbmQgZW1iZWRzLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIGZ1bGwgcmVuZGVyLlxuICogQHJldHVybnMgVGhlIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGZ1bGwgcmVuZGVyIGlzIGNvbXBsZXRlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZnVsbFJlbmRlcihwYXJhbXM6IEZ1bGxSZW5kZXJQYXJhbXMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgc291cmNlUGF0aCA9IHBhcmFtcy5zb3VyY2VQYXRoID8/ICcvJztcbiAgbGV0IHNob3VsZFVubG9hZENvbXBvbmVudCA9IGZhbHNlO1xuICBsZXQgY29tcG9uZW50OiBDb21wb25lbnQ7XG4gIGlmIChwYXJhbXMuY29tcG9uZW50KSB7XG4gICAgY29tcG9uZW50ID0gcGFyYW1zLmNvbXBvbmVudDtcbiAgfSBlbHNlIHtcbiAgICBjb21wb25lbnQgPSBuZXcgQ29tcG9uZW50KCk7XG4gICAgY29tcG9uZW50LmxvYWQoKTtcbiAgICBzaG91bGRVbmxvYWRDb21wb25lbnQgPSB0cnVlO1xuICB9XG5cbiAgdXNpbmcgXyA9IGNvbXBvbmVudC5hZGRDaGlsZChuZXcgRW1iZWRCeUV4dGVuc2lvbk1kUGF0Y2hDb21wb25lbnQocGFyYW1zLmFwcC5lbWJlZFJlZ2lzdHJ5LmVtYmVkQnlFeHRlbnNpb24pKTtcblxuICBhd2FpdCBNYXJrZG93blJlbmRlcmVyLnJlbmRlcihwYXJhbXMuYXBwLCBwYXJhbXMubWFya2Rvd24sIHBhcmFtcy5lbCwgc291cmNlUGF0aCwgY29tcG9uZW50KTtcblxuICBpZiAoc2hvdWxkVW5sb2FkQ29tcG9uZW50KSB7XG4gICAgY29tcG9uZW50LnVubG9hZCgpO1xuICB9XG5cbiAgaWYgKHBhcmFtcy5zaG91bGRSZWdpc3RlckxpbmtIYW5kbGVycykge1xuICAgIGF3YWl0IHJlZ2lzdGVyTGlua0hhbmRsZXJzKHBhcmFtcy5hcHAsIHBhcmFtcy5lbCwgcGFyYW1zLnNvdXJjZVBhdGgpO1xuICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgTWFya2Rvd24gdG8gSFRNTC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEBwYXJhbSBtYXJrZG93biAtIFRoZSBNYXJrZG93biBzdHJpbmcgdG8gY29udmVydC5cbiAqIEBwYXJhbSBzb3VyY2VQYXRoIC0gKG9wdGlvbmFsKSBUaGUgc291cmNlIHBhdGggdG8gcmVzb2x2ZSByZWxhdGl2ZSBsaW5rcy5cbiAqIEByZXR1cm5zIFRoZSBIVE1MIHN0cmluZy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1hcmtkb3duVG9IdG1sKGFwcDogQXBwLCBtYXJrZG93bjogc3RyaW5nLCBzb3VyY2VQYXRoPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgY29tcG9uZW50ID0gbmV3IENvbXBvbmVudCgpO1xuICBjb21wb25lbnQubG9hZCgpO1xuICBjb25zdCByZW5kZXJEaXYgPSBjcmVhdGVEaXYoKTtcbiAgYXdhaXQgTWFya2Rvd25SZW5kZXJlci5yZW5kZXIoYXBwLCBtYXJrZG93biwgcmVuZGVyRGl2LCBzb3VyY2VQYXRoID8/ICcnLCBjb21wb25lbnQpO1xuICBjb25zdCBodG1sID0gcmVuZGVyRGl2LmlubmVySFRNTDtcbiAgY29tcG9uZW50LnVubG9hZCgpO1xuICByZXR1cm4gaHRtbDtcbn1cblxuLyoqXG4gKiBSZWdpc3RlcnMgbGluayBoYW5kbGVycyBmb3IgdGhlIGdpdmVuIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gZWwgLSBUaGUgSFRNTEVsZW1lbnQgdG8gcmVnaXN0ZXIgbGluayBoYW5kbGVycyBmb3IuXG4gKiBAcGFyYW0gc291cmNlUGF0aCAtIFRoZSBzb3VyY2UgcGF0aCB0byByZXNvbHZlIHJlbGF0aXZlIGxpbmtzIGZyb20uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWdpc3RlckxpbmtIYW5kbGVycyhhcHA6IEFwcCwgZWw6IEhUTUxFbGVtZW50LCBzb3VyY2VQYXRoPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF0b21pYy11cGRhdGVzIC0tIE5vIHJhY2UgY29uZGl0aW9uLlxuICBkb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yID8/PSBhd2FpdCBnZXREb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yKGFwcCk7XG4gIE1hcmtkb3duUHJldmlld1JlbmRlcmVyLnJlZ2lzdGVyRG9tRXZlbnRzKFxuICAgIGVsLFxuICAgIG5ldyBkb21FdmVudHNIYW5kbGVyc0NvbnN0cnVjdG9yKFxuICAgICAgbmV3IEZpeGVkWkluZGV4RG9tRXZlbnRzSGFuZGxlcnNJbmZvKHtcbiAgICAgICAgYXBwLFxuICAgICAgICBlbCxcbiAgICAgICAgcGF0aDogc291cmNlUGF0aCA/PyAnJ1xuICAgICAgfSlcbiAgICApXG4gICk7XG59XG5cbi8qKlxuICogUmVuZGVycyBhbiBleHRlcm5hbCBsaW5rLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHBhcmFtIHVybCAtIFRoZSBVUkwgdG8gcmVuZGVyIHRoZSBleHRlcm5hbCBsaW5rIGZvci5cbiAqIEBwYXJhbSBkaXNwbGF5VGV4dCAtIFRoZSB0ZXh0IHRvIGRpc3BsYXkgZm9yIHRoZSBleHRlcm5hbCBsaW5rLlxuICogQHJldHVybnMgVGhlIEhUTUxBbmNob3JFbGVtZW50IGNvbnRhaW5pbmcgdGhlIHJlbmRlcmVkIGV4dGVybmFsIGxpbmsuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW5kZXJFeHRlcm5hbExpbmsoYXBwOiBBcHAsIHVybDogc3RyaW5nLCBkaXNwbGF5VGV4dD86IHN0cmluZyk6IFByb21pc2U8SFRNTEFuY2hvckVsZW1lbnQ+IHtcbiAgZGlzcGxheVRleHQgPz89IHVybDtcbiAgY29uc3Qgd3JhcHBlckVsID0gY3JlYXRlU3BhbigpO1xuICBhd2FpdCBmdWxsUmVuZGVyKHtcbiAgICBhcHAsXG4gICAgZWw6IHdyYXBwZXJFbCxcbiAgICBtYXJrZG93bjogYFske2Rpc3BsYXlUZXh0fV0oJHt1cmx9KWBcbiAgfSk7XG4gIGNvbnN0IGFFbCA9IHdyYXBwZXJFbC5maW5kKCdhJykgYXMgSFRNTEFuY2hvckVsZW1lbnQ7XG4gIGF3YWl0IHJlZ2lzdGVyTGlua0hhbmRsZXJzKGFwcCwgYUVsKTtcbiAgcmV0dXJuIGFFbDtcbn1cblxuLyoqXG4gKiBSZW5kZXJzIGFuIGludGVybmFsIGxpbmsuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yQWJzdHJhY3RGaWxlIC0gVGhlIHBhdGggb3IgYWJzdHJhY3QgZmlsZSB0byByZW5kZXIgdGhlIGludGVybmFsIGxpbmsgZm9yLlxuICogQHBhcmFtIGRpc3BsYXlUZXh0IC0gVGhlIHRleHQgdG8gZGlzcGxheSBmb3IgdGhlIGludGVybmFsIGxpbmsuXG4gKiBAcmV0dXJucyBUaGUgSFRNTEFuY2hvckVsZW1lbnQgY29udGFpbmluZyB0aGUgcmVuZGVyZWQgaW50ZXJuYWwgbGluay5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlbmRlckludGVybmFsTGluayhhcHA6IEFwcCwgcGF0aE9yQWJzdHJhY3RGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUsIGRpc3BsYXlUZXh0Pzogc3RyaW5nKTogUHJvbWlzZTxIVE1MQW5jaG9yRWxlbWVudD4ge1xuICBjb25zdCBhYnN0cmFjdEZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JBYnN0cmFjdEZpbGUpO1xuICBjb25zdCBwYXRoID0gZ2V0UGF0aChhcHAsIHBhdGhPckFic3RyYWN0RmlsZSk7XG4gIGRpc3BsYXlUZXh0ID8/PSBwYXRoO1xuICBpZiAoaXNGb2xkZXIoYWJzdHJhY3RGaWxlKSkge1xuICAgIHJldHVybiBjcmVhdGVFbCgnYScsIHsgdGV4dDogZGlzcGxheVRleHQgfSwgKGFFbCkgPT4ge1xuICAgICAgYUVsLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2dCkgPT4ge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXBwLmludGVybmFsUGx1Z2lucy5nZXRFbmFibGVkUGx1Z2luQnlJZChJbnRlcm5hbFBsdWdpbk5hbWUuRmlsZUV4cGxvcmVyKT8ucmV2ZWFsSW5Gb2xkZXIoYWJzdHJhY3RGaWxlKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qgd3JhcHBlckVsID0gY3JlYXRlU3BhbigpO1xuICBhd2FpdCBmdWxsUmVuZGVyKHtcbiAgICBhcHAsXG4gICAgZWw6IHdyYXBwZXJFbCxcbiAgICBtYXJrZG93bjogYFtbJHtwYXRofXwke2Rpc3BsYXlUZXh0fV1dYFxuICB9KTtcbiAgY29uc3QgYUVsID0gd3JhcHBlckVsLmZpbmQoJ2EnKSBhcyBIVE1MQW5jaG9yRWxlbWVudDtcbiAgYXdhaXQgcmVnaXN0ZXJMaW5rSGFuZGxlcnMoYXBwLCBhRWwpO1xuICByZXR1cm4gYUVsO1xufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFnQkEsU0FBUywwQkFBMEI7QUFDbkM7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7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
|
|
@@ -25,7 +25,6 @@ import { t } from "i18next";
|
|
|
25
25
|
import { ButtonComponent } from "obsidian";
|
|
26
26
|
import { CssClass } from "../../css-class.mjs";
|
|
27
27
|
import {
|
|
28
|
-
addCssClass,
|
|
29
28
|
ModalBase,
|
|
30
29
|
showModal
|
|
31
30
|
} from "./modal.mjs";
|
|
@@ -33,14 +32,15 @@ class AlertModal extends ModalBase {
|
|
|
33
32
|
message;
|
|
34
33
|
okButtonText;
|
|
35
34
|
title;
|
|
36
|
-
constructor(params
|
|
37
|
-
super(
|
|
35
|
+
constructor(params) {
|
|
36
|
+
super(params);
|
|
37
|
+
this.addCssClasses(CssClass.AlertModal);
|
|
38
38
|
this.message = params.message;
|
|
39
39
|
this.okButtonText = params.okButtonText ?? t(($) => $.obsidianDevUtils.buttons.ok);
|
|
40
40
|
this.title = params.title ?? "";
|
|
41
41
|
}
|
|
42
42
|
onClose() {
|
|
43
|
-
this.
|
|
43
|
+
this.promiseResolve();
|
|
44
44
|
}
|
|
45
45
|
onOpen() {
|
|
46
46
|
this.titleEl.setText(this.title);
|
|
@@ -53,9 +53,14 @@ class AlertModal extends ModalBase {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
async function alert(params) {
|
|
56
|
-
await showModal(
|
|
56
|
+
await showModal(
|
|
57
|
+
(promiseResolve) => new AlertModal({
|
|
58
|
+
...params,
|
|
59
|
+
promiseResolve
|
|
60
|
+
})
|
|
61
|
+
);
|
|
57
62
|
}
|
|
58
63
|
export {
|
|
59
64
|
alert
|
|
60
65
|
};
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21vZGFscy9hbGVydC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFV0aWxpdHkgZm9yIGRpc3BsYXlpbmcgYWxlcnQgbW9kYWxzIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgd2l0aCBhIG1lc3NhZ2UgaW4gT2JzaWRpYW4uIFRoZSBtb2RhbCBpbmNsdWRlcyBhbiBcIk9LXCIgYnV0dG9uIHRvIGNsb3NlIGl0LlxuICovXG5cbmltcG9ydCB7IHQgfSBmcm9tICdpMThuZXh0JztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUge1xuICBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtcyxcbiAgTW9kYWxQYXJhbXNCYXNlXG59IGZyb20gJy4vbW9kYWwudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL21vZGFsLnRzJztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgQWxlcnRNb2RhbH0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxlcnRQYXJhbXMgZXh0ZW5kcyBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQSBtZXNzYWdlIHRvIGRpc3BsYXkgaW4gdGhlIG1vZGFsLlxuICAgKi9cbiAgcmVhZG9ubHkgbWVzc2FnZTogRG9jdW1lbnRGcmFnbWVudCB8IHN0cmluZztcblxuICAvKipcbiAgICogQSB0ZXh0IGZvciB0aGUgXCJPS1wiIGJ1dHRvbi5cbiAgICovXG4gIHJlYWRvbmx5IG9rQnV0dG9uVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogQSB0aXRsZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICByZWFkb25seSB0aXRsZT86IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG59XG5cbnR5cGUgQWxlcnRNb2RhbENvbnN0cnVjdG9yUGFyYW1zID0gQWxlcnRQYXJhbXMgJiBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtczx2b2lkPjtcblxuY2xhc3MgQWxlcnRNb2RhbCBleHRlbmRzIE1vZGFsQmFzZTx2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWVzc2FnZTogRG9jdW1lbnRGcmFnbWVudCB8IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBva0J1dHRvblRleHQ6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSB0aXRsZTogRG9jdW1lbnRGcmFnbWVudCB8IHN0cmluZztcblxuICBwdWJsaWMgY29uc3RydWN0b3IocGFyYW1zOiBBbGVydE1vZGFsQ29uc3RydWN0b3JQYXJhbXMpIHtcbiAgICBzdXBlcihwYXJhbXMpO1xuICAgIHRoaXMuYWRkQ3NzQ2xhc3NlcyhDc3NDbGFzcy5BbGVydE1vZGFsKTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBwYXJhbXMubWVzc2FnZTtcbiAgICB0aGlzLm9rQnV0dG9uVGV4dCA9IHBhcmFtcy5va0J1dHRvblRleHQgPz8gdCgoJCkgPT4gJC5vYnNpZGlhbkRldlV0aWxzLmJ1dHRvbnMub2spO1xuICAgIHRoaXMudGl0bGUgPSBwYXJhbXMudGl0bGUgPz8gJyc7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLnByb21pc2VSZXNvbHZlKCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVFbC5zZXRUZXh0KHRoaXMudGl0bGUpO1xuICAgIHRoaXMuY29udGVudEVsLmNyZWF0ZUVsKCdwJywgeyB0ZXh0OiB0aGlzLm1lc3NhZ2UgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub2tCdXR0b25UZXh0KTtcbiAgICBva0J1dHRvbi5zZXRDdGEoKTtcbiAgICBva0J1dHRvbi5vbkNsaWNrKHRoaXMuY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgb2tCdXR0b24uc2V0Q2xhc3MoQ3NzQ2xhc3MuT2tCdXR0b24pO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYW4gYWxlcnQgbW9kYWwgaW4gT2JzaWRpYW4gd2l0aCBhIHNwZWNpZmllZCBtZXNzYWdlLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIGFsZXJ0IG1vZGFsLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBtb2RhbCBpcyBjbG9zZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhbGVydChwYXJhbXM6IEFsZXJ0UGFyYW1zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IHNob3dNb2RhbCgocHJvbWlzZVJlc29sdmUpID0+XG4gICAgbmV3IEFsZXJ0TW9kYWwoe1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgcHJvbWlzZVJlc29sdmVcbiAgICB9KVxuICApO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSxTQUFTLFNBQVM7QUFDbEIsU0FBUyx1QkFBdUI7QUFPaEMsU0FBUyxnQkFBZ0I7QUFDekI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUF3QlAsTUFBTSxtQkFBbUIsVUFBZ0I7QUFBQSxFQUN0QjtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFFVixZQUFZLFFBQXFDO0FBQ3RELFVBQU0sTUFBTTtBQUNaLFNBQUssY0FBYyxTQUFTLFVBQVU7QUFDdEMsU0FBSyxVQUFVLE9BQU87QUFDdEIsU0FBSyxlQUFlLE9BQU8sZ0JBQWdCLEVBQUUsQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLFFBQVEsRUFBRTtBQUNqRixTQUFLLFFBQVEsT0FBTyxTQUFTO0FBQUEsRUFDL0I7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixTQUFLLGVBQWU7QUFBQSxFQUN0QjtBQUFBLEVBRWdCLFNBQWU7QUFDN0IsU0FBSyxRQUFRLFFBQVEsS0FBSyxLQUFLO0FBQy9CLFNBQUssVUFBVSxTQUFTLEtBQUssRUFBRSxNQUFNLEtBQUssUUFBUSxDQUFDO0FBQ25ELFVBQU0sV0FBVyxJQUFJLGdCQUFnQixLQUFLLFNBQVM7QUFDbkQsYUFBUyxjQUFjLEtBQUssWUFBWTtBQUN4QyxhQUFTLE9BQU87QUFDaEIsYUFBUyxRQUFRLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQztBQUN0QyxhQUFTLFNBQVMsU0FBUyxRQUFRO0FBQUEsRUFDckM7QUFDRjtBQVFBLGVBQXNCLE1BQU0sUUFBb0M7QUFDOUQsUUFBTTtBQUFBLElBQVUsQ0FBQyxtQkFDZixJQUFJLFdBQVc7QUFBQSxNQUNiLEdBQUc7QUFBQSxNQUNIO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -6,23 +6,15 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This module exports a function to display a modal with a message in Obsidian. The modal includes "OK" and "Cancel" buttons to confirm or cancel the action.
|
|
8
8
|
*/
|
|
9
|
-
import type {
|
|
9
|
+
import type { ModalParamsBase } from './modal.mjs';
|
|
10
10
|
/**
|
|
11
11
|
* Parameters for {@link confirm}.
|
|
12
12
|
*/
|
|
13
|
-
export interface ConfirmParams {
|
|
14
|
-
/**
|
|
15
|
-
* An Obsidian app instance.
|
|
16
|
-
*/
|
|
17
|
-
readonly app: App;
|
|
13
|
+
export interface ConfirmParams extends ModalParamsBase {
|
|
18
14
|
/**
|
|
19
15
|
* A text for the "Cancel" button.
|
|
20
16
|
*/
|
|
21
17
|
readonly cancelButtonText?: string;
|
|
22
|
-
/**
|
|
23
|
-
* A CSS class to apply to the modal.
|
|
24
|
-
*/
|
|
25
|
-
readonly cssClass?: string;
|
|
26
18
|
/**
|
|
27
19
|
* A message to display in the modal.
|
|
28
20
|
*/
|
|
@@ -25,7 +25,6 @@ import { ButtonComponent } from "obsidian";
|
|
|
25
25
|
import { CssClass } from "../../css-class.mjs";
|
|
26
26
|
import { t } from "../i18n/i18n.mjs";
|
|
27
27
|
import {
|
|
28
|
-
addCssClass,
|
|
29
28
|
ModalBase,
|
|
30
29
|
showModal
|
|
31
30
|
} from "./modal.mjs";
|
|
@@ -35,15 +34,16 @@ class ConfirmModal extends ModalBase {
|
|
|
35
34
|
message;
|
|
36
35
|
okButtonText;
|
|
37
36
|
title;
|
|
38
|
-
constructor(params
|
|
39
|
-
super(
|
|
37
|
+
constructor(params) {
|
|
38
|
+
super(params);
|
|
39
|
+
this.addCssClasses(CssClass.ConfirmModal);
|
|
40
40
|
this.cancelButtonText = params.cancelButtonText ?? t(($) => $.obsidianDevUtils.buttons.cancel);
|
|
41
41
|
this.message = params.message;
|
|
42
42
|
this.okButtonText = params.okButtonText ?? t(($) => $.obsidianDevUtils.buttons.ok);
|
|
43
43
|
this.title = params.title ?? "";
|
|
44
44
|
}
|
|
45
45
|
onClose() {
|
|
46
|
-
this.
|
|
46
|
+
this.promiseResolve(this.isConfirmed);
|
|
47
47
|
}
|
|
48
48
|
onOpen() {
|
|
49
49
|
this.titleEl.setText(this.title);
|
|
@@ -63,9 +63,14 @@ class ConfirmModal extends ModalBase {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
async function confirm(params) {
|
|
66
|
-
return await showModal(
|
|
66
|
+
return await showModal(
|
|
67
|
+
(promiseResolve) => new ConfirmModal({
|
|
68
|
+
...params,
|
|
69
|
+
promiseResolve
|
|
70
|
+
})
|
|
71
|
+
);
|
|
67
72
|
}
|
|
68
73
|
export {
|
|
69
74
|
confirm
|
|
70
75
|
};
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21vZGFscy9jb25maXJtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBjb25maXJtIG1vZGFscyBpbiBPYnNpZGlhbi5cbiAqXG4gKiBUaGlzIG1vZHVsZSBleHBvcnRzIGEgZnVuY3Rpb24gdG8gZGlzcGxheSBhIG1vZGFsIHdpdGggYSBtZXNzYWdlIGluIE9ic2lkaWFuLiBUaGUgbW9kYWwgaW5jbHVkZXMgXCJPS1wiIGFuZCBcIkNhbmNlbFwiIGJ1dHRvbnMgdG8gY29uZmlybSBvciBjYW5jZWwgdGhlIGFjdGlvbi5cbiAqL1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHtcbiAgTW9kYWxCYXNlQ29uc3RydWN0b3JQYXJhbXMsXG4gIE1vZGFsUGFyYW1zQmFzZVxufSBmcm9tICcuL21vZGFsLnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9jc3MtY2xhc3MudHMnO1xuaW1wb3J0IHsgdCB9IGZyb20gJy4uL2kxOG4vaTE4bi50cyc7XG5pbXBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL21vZGFsLnRzJztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgY29uZmlybX0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybVBhcmFtcyBleHRlbmRzIE1vZGFsUGFyYW1zQmFzZSB7XG4gIC8qKlxuICAgKiBBIHRleHQgZm9yIHRoZSBcIkNhbmNlbFwiIGJ1dHRvbi5cbiAgICovXG4gIHJlYWRvbmx5IGNhbmNlbEJ1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbWVzc2FnZSB0byBkaXNwbGF5IGluIHRoZSBtb2RhbC5cbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2U6IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgdGV4dCBmb3IgdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICByZWFkb25seSBva0J1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgdGl0bGUgb2YgdGhlIG1vZGFsLlxuICAgKi9cbiAgcmVhZG9ubHkgdGl0bGU/OiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xufVxuXG50eXBlIENvbmZpcm1Nb2RhbENvbnN0cnVjdG9yUGFyYW1zID0gQ29uZmlybVBhcmFtcyAmIE1vZGFsQmFzZUNvbnN0cnVjdG9yUGFyYW1zPGJvb2xlYW4+O1xuXG5jbGFzcyBDb25maXJtTW9kYWwgZXh0ZW5kcyBNb2RhbEJhc2U8Ym9vbGVhbj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGNhbmNlbEJ1dHRvblRleHQ6IHN0cmluZztcbiAgcHJpdmF0ZSBpc0NvbmZpcm1lZCA9IGZhbHNlO1xuICBwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2U6IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgb2tCdXR0b25UZXh0OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGl0bGU6IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhcmFtczogQ29uZmlybU1vZGFsQ29uc3RydWN0b3JQYXJhbXMpIHtcbiAgICBzdXBlcihwYXJhbXMpO1xuICAgIHRoaXMuYWRkQ3NzQ2xhc3NlcyhDc3NDbGFzcy5Db25maXJtTW9kYWwpO1xuICAgIHRoaXMuY2FuY2VsQnV0dG9uVGV4dCA9IHBhcmFtcy5jYW5jZWxCdXR0b25UZXh0ID8/IHQoKCQpID0+ICQub2JzaWRpYW5EZXZVdGlscy5idXR0b25zLmNhbmNlbCk7XG4gICAgdGhpcy5tZXNzYWdlID0gcGFyYW1zLm1lc3NhZ2U7XG4gICAgdGhpcy5va0J1dHRvblRleHQgPSBwYXJhbXMub2tCdXR0b25UZXh0ID8/IHQoKCQpID0+ICQub2JzaWRpYW5EZXZVdGlscy5idXR0b25zLm9rKTtcbiAgICB0aGlzLnRpdGxlID0gcGFyYW1zLnRpdGxlID8/ICcnO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5wcm9taXNlUmVzb2x2ZSh0aGlzLmlzQ29uZmlybWVkKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbk9wZW4oKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZUVsLnNldFRleHQodGhpcy50aXRsZSk7XG4gICAgdGhpcy5jb250ZW50RWwuY3JlYXRlRWwoJ3AnLCB7IHRleHQ6IHRoaXMubWVzc2FnZSB9KTtcbiAgICBjb25zdCBva0J1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIG9rQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5va0J1dHRvblRleHQpO1xuICAgIG9rQnV0dG9uLnNldEN0YSgpO1xuICAgIG9rQnV0dG9uLm9uQ2xpY2soKCkgPT4ge1xuICAgICAgdGhpcy5pc0NvbmZpcm1lZCA9IHRydWU7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfSk7XG4gICAgb2tCdXR0b24uc2V0Q2xhc3MoQ3NzQ2xhc3MuT2tCdXR0b24pO1xuXG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gbmV3IEJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgY2FuY2VsQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5jYW5jZWxCdXR0b25UZXh0KTtcbiAgICBjYW5jZWxCdXR0b24ub25DbGljayh0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIGNhbmNlbEJ1dHRvbi5zZXRDbGFzcyhDc3NDbGFzcy5DYW5jZWxCdXR0b24pO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYW4gY29uZmlybSBtb2RhbCBpbiBPYnNpZGlhbiB3aXRoIGEgc3BlY2lmaWVkIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzIGZvciB0aGUgY29uZmlybSBtb2RhbC5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBcIk9LXCIgYnV0dG9uIHdhcyBjbGlja2VkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY29uZmlybShwYXJhbXM6IENvbmZpcm1QYXJhbXMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgcmV0dXJuIGF3YWl0IHNob3dNb2RhbDxib29sZWFuPigocHJvbWlzZVJlc29sdmUpID0+XG4gICAgbmV3IENvbmZpcm1Nb2RhbCh7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBwcm9taXNlUmVzb2x2ZVxuICAgIH0pXG4gICk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBLFNBQVMsdUJBQXVCO0FBT2hDLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsU0FBUztBQUNsQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQTZCUCxNQUFNLHFCQUFxQixVQUFtQjtBQUFBLEVBQzNCO0FBQUEsRUFDVCxjQUFjO0FBQUEsRUFDTDtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFFVixZQUFZLFFBQXVDO0FBQ3hELFVBQU0sTUFBTTtBQUNaLFNBQUssY0FBYyxTQUFTLFlBQVk7QUFDeEMsU0FBSyxtQkFBbUIsT0FBTyxvQkFBb0IsRUFBRSxDQUFDLE1BQU0sRUFBRSxpQkFBaUIsUUFBUSxNQUFNO0FBQzdGLFNBQUssVUFBVSxPQUFPO0FBQ3RCLFNBQUssZUFBZSxPQUFPLGdCQUFnQixFQUFFLENBQUMsTUFBTSxFQUFFLGlCQUFpQixRQUFRLEVBQUU7QUFDakYsU0FBSyxRQUFRLE9BQU8sU0FBUztBQUFBLEVBQy9CO0FBQUEsRUFFZ0IsVUFBZ0I7QUFDOUIsU0FBSyxlQUFlLEtBQUssV0FBVztBQUFBLEVBQ3RDO0FBQUEsRUFFZ0IsU0FBZTtBQUM3QixTQUFLLFFBQVEsUUFBUSxLQUFLLEtBQUs7QUFDL0IsU0FBSyxVQUFVLFNBQVMsS0FBSyxFQUFFLE1BQU0sS0FBSyxRQUFRLENBQUM7QUFDbkQsVUFBTSxXQUFXLElBQUksZ0JBQWdCLEtBQUssU0FBUztBQUNuRCxhQUFTLGNBQWMsS0FBSyxZQUFZO0FBQ3hDLGFBQVMsT0FBTztBQUNoQixhQUFTLFFBQVEsTUFBTTtBQUNyQixXQUFLLGNBQWM7QUFDbkIsV0FBSyxNQUFNO0FBQUEsSUFDYixDQUFDO0FBQ0QsYUFBUyxTQUFTLFNBQVMsUUFBUTtBQUVuQyxVQUFNLGVBQWUsSUFBSSxnQkFBZ0IsS0FBSyxTQUFTO0FBQ3ZELGlCQUFhLGNBQWMsS0FBSyxnQkFBZ0I7QUFDaEQsaUJBQWEsUUFBUSxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDMUMsaUJBQWEsU0FBUyxTQUFTLFlBQVk7QUFBQSxFQUM3QztBQUNGO0FBUUEsZUFBc0IsUUFBUSxRQUF5QztBQUNyRSxTQUFPLE1BQU07QUFBQSxJQUFtQixDQUFDLG1CQUMvQixJQUFJLGFBQWE7QUFBQSxNQUNmLEdBQUc7QUFBQSxNQUNIO0FBQUEsSUFDRixDQUFDO0FBQUEsRUFDSDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -7,6 +7,17 @@
|
|
|
7
7
|
import type { App } from 'obsidian';
|
|
8
8
|
import { Modal } from 'obsidian';
|
|
9
9
|
import type { PromiseResolve } from '../../async.mjs';
|
|
10
|
+
/**
|
|
11
|
+
* The parameters for constructing a {@link ModalBase}.
|
|
12
|
+
*
|
|
13
|
+
* @typeParam Value - The type of the value resolved by the modal.
|
|
14
|
+
*/
|
|
15
|
+
export interface ModalBaseConstructorParams<Value> extends ModalParamsBase {
|
|
16
|
+
/**
|
|
17
|
+
* A function to resolve the value of the modal.
|
|
18
|
+
*/
|
|
19
|
+
readonly promiseResolve: PromiseResolve<Value>;
|
|
20
|
+
}
|
|
10
21
|
/**
|
|
11
22
|
* Base options for a modal.
|
|
12
23
|
*/
|
|
@@ -26,23 +37,23 @@ export interface ModalParamsBase {
|
|
|
26
37
|
* @typeParam Value - The type of the value resolved by the modal.
|
|
27
38
|
*/
|
|
28
39
|
export declare abstract class ModalBase<Value> extends Modal {
|
|
29
|
-
|
|
40
|
+
/**
|
|
41
|
+
* A function to resolve the value of the modal.
|
|
42
|
+
*/
|
|
43
|
+
protected readonly promiseResolve: PromiseResolve<Value>;
|
|
30
44
|
/**
|
|
31
45
|
* Creates a new modal.
|
|
32
46
|
*
|
|
33
47
|
* @param params - The options.
|
|
34
|
-
* @param resolve - The resolve function.
|
|
35
48
|
*/
|
|
36
|
-
constructor(params:
|
|
49
|
+
constructor(params: ModalBaseConstructorParams<Value>);
|
|
50
|
+
/**
|
|
51
|
+
* Adds CSS classes to the modal's container element.
|
|
52
|
+
*
|
|
53
|
+
* @param cssClasses - The CSS classes to add.
|
|
54
|
+
*/
|
|
55
|
+
protected addCssClasses(cssClasses?: string | string[]): void;
|
|
37
56
|
}
|
|
38
|
-
/**
|
|
39
|
-
* Adds a CSS class to the modal parameters.
|
|
40
|
-
*
|
|
41
|
-
* @param params - The modal parameters.
|
|
42
|
-
* @param cssClass - The CSS class to add.
|
|
43
|
-
* @returns The modal parameters with the CSS class added.
|
|
44
|
-
*/
|
|
45
|
-
export declare function addCssClass(params: ModalParamsBase, cssClass: string): ModalParamsBase;
|
|
46
57
|
/**
|
|
47
58
|
* Displays a modal in Obsidian.
|
|
48
59
|
*
|
|
@@ -24,24 +24,28 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
24
24
|
import { Modal } from "obsidian";
|
|
25
25
|
import { addPluginCssClasses } from "../plugin/plugin-context.mjs";
|
|
26
26
|
class ModalBase extends Modal {
|
|
27
|
+
/**
|
|
28
|
+
* A function to resolve the value of the modal.
|
|
29
|
+
*/
|
|
30
|
+
promiseResolve;
|
|
27
31
|
/**
|
|
28
32
|
* Creates a new modal.
|
|
29
33
|
*
|
|
30
34
|
* @param params - The options.
|
|
31
|
-
* @param resolve - The resolve function.
|
|
32
35
|
*/
|
|
33
|
-
constructor(params
|
|
36
|
+
constructor(params) {
|
|
34
37
|
super(params.app);
|
|
35
|
-
this.
|
|
36
|
-
|
|
38
|
+
this.promiseResolve = params.promiseResolve;
|
|
39
|
+
this.addCssClasses(params.cssClasses);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds CSS classes to the modal's container element.
|
|
43
|
+
*
|
|
44
|
+
* @param cssClasses - The CSS classes to add.
|
|
45
|
+
*/
|
|
46
|
+
addCssClasses(cssClasses) {
|
|
47
|
+
addPluginCssClasses(this.containerEl, cssClasses);
|
|
37
48
|
}
|
|
38
|
-
resolve;
|
|
39
|
-
}
|
|
40
|
-
function addCssClass(params, cssClass) {
|
|
41
|
-
return {
|
|
42
|
-
...params,
|
|
43
|
-
cssClasses: [...params.cssClasses ?? [], cssClass]
|
|
44
|
-
};
|
|
45
49
|
}
|
|
46
50
|
async function showModal(modalCreator) {
|
|
47
51
|
return await new Promise((resolve) => {
|
|
@@ -51,7 +55,6 @@ async function showModal(modalCreator) {
|
|
|
51
55
|
}
|
|
52
56
|
export {
|
|
53
57
|
ModalBase,
|
|
54
|
-
addCssClass,
|
|
55
58
|
showModal
|
|
56
59
|
};
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21vZGFscy9tb2RhbC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBiYXNlIGNsYXNzIGZvciBkaXNwbGF5aW5nIG1vZGFscyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgTW9kYWwgfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzZVJlc29sdmUgfSBmcm9tICcuLi8uLi9hc3luYy50cyc7XG5cbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIFRoZSBwYXJhbWV0ZXJzIGZvciBjb25zdHJ1Y3RpbmcgYSB7QGxpbmsgTW9kYWxCYXNlfS5cbiAqXG4gKiBAdHlwZVBhcmFtIFZhbHVlIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIGJ5IHRoZSBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RhbEJhc2VDb25zdHJ1Y3RvclBhcmFtczxWYWx1ZT4gZXh0ZW5kcyBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQSBmdW5jdGlvbiB0byByZXNvbHZlIHRoZSB2YWx1ZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICByZWFkb25seSBwcm9taXNlUmVzb2x2ZTogUHJvbWlzZVJlc29sdmU8VmFsdWU+O1xufVxuXG4vKipcbiAqIEJhc2Ugb3B0aW9ucyBmb3IgYSBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQW4gT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIEEgQ1NTIGNsYXNzIHRvIGFwcGx5IHRvIHRoZSBtb2RhbC5cbiAgICovXG4gIHJlYWRvbmx5IGNzc0NsYXNzZXM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBBIGJhc2UgY2xhc3MgZm9yIGRpc3BsYXlpbmcgbW9kYWxzIGluIE9ic2lkaWFuLlxuICpcbiAqIEB0eXBlUGFyYW0gVmFsdWUgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgcmVzb2x2ZWQgYnkgdGhlIG1vZGFsLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTW9kYWxCYXNlPFZhbHVlPiBleHRlbmRzIE1vZGFsIHtcbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gcmVzb2x2ZSB0aGUgdmFsdWUgb2YgdGhlIG1vZGFsLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHByb21pc2VSZXNvbHZlOiBQcm9taXNlUmVzb2x2ZTxWYWx1ZT47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbW9kYWwuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgb3B0aW9ucy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IE1vZGFsQmFzZUNvbnN0cnVjdG9yUGFyYW1zPFZhbHVlPikge1xuICAgIHN1cGVyKHBhcmFtcy5hcHApO1xuICAgIHRoaXMucHJvbWlzZVJlc29sdmUgPSBwYXJhbXMucHJvbWlzZVJlc29sdmU7XG4gICAgdGhpcy5hZGRDc3NDbGFzc2VzKHBhcmFtcy5jc3NDbGFzc2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIENTUyBjbGFzc2VzIHRvIHRoZSBtb2RhbCdzIGNvbnRhaW5lciBlbGVtZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY3NzQ2xhc3NlcyAtIFRoZSBDU1MgY2xhc3NlcyB0byBhZGQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWRkQ3NzQ2xhc3Nlcyhjc3NDbGFzc2VzPzogc3RyaW5nIHwgc3RyaW5nW10pOiB2b2lkIHtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKHRoaXMuY29udGFpbmVyRWwsIGNzc0NsYXNzZXMpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBtb2RhbCBpbiBPYnNpZGlhbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFZhbHVlIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHJlc29sdmVkIGJ5IHRoZSBtb2RhbC5cbiAqIEBwYXJhbSBtb2RhbENyZWF0b3IgLSBBIGZ1bmN0aW9uIHRoYXQgY3JlYXRlcyBhIG1vZGFsLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBtb2RhbCBpcyBjbG9zZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaG93TW9kYWw8VmFsdWU+KG1vZGFsQ3JlYXRvcjogKHJlc29sdmU6IFByb21pc2VSZXNvbHZlPFZhbHVlPikgPT4gTW9kYWwpOiBQcm9taXNlPFZhbHVlPiB7XG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxWYWx1ZT4oKHJlc29sdmUpID0+IHtcbiAgICBjb25zdCBtb2RhbCA9IG1vZGFsQ3JlYXRvcihyZXNvbHZlKTtcbiAgICBtb2RhbC5vcGVuKCk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSxTQUFTLGFBQWE7QUFJdEIsU0FBUywyQkFBMkI7QUFrQzdCLE1BQWUsa0JBQXlCLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUloQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9aLFlBQVksUUFBMkM7QUFDNUQsVUFBTSxPQUFPLEdBQUc7QUFDaEIsU0FBSyxpQkFBaUIsT0FBTztBQUM3QixTQUFLLGNBQWMsT0FBTyxVQUFVO0FBQUEsRUFDdEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPVSxjQUFjLFlBQXNDO0FBQzVELHdCQUFvQixLQUFLLGFBQWEsVUFBVTtBQUFBLEVBQ2xEO0FBQ0Y7QUFTQSxlQUFzQixVQUFpQixjQUF5RTtBQUM5RyxTQUFPLE1BQU0sSUFBSSxRQUFlLENBQUMsWUFBWTtBQUMzQyxVQUFNLFFBQVEsYUFBYSxPQUFPO0FBQ2xDLFVBQU0sS0FBSztBQUFBLEVBQ2IsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -6,17 +6,13 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This module exports a function to display a modal that prompts the user for input. The modal includes "OK" and "Cancel" buttons.
|
|
8
8
|
*/
|
|
9
|
-
import type { App } from 'obsidian';
|
|
10
9
|
import type { Promisable } from 'type-fest';
|
|
11
10
|
import type { MaybeReturn } from '../../type.mjs';
|
|
11
|
+
import type { ModalParamsBase } from './modal.mjs';
|
|
12
12
|
/**
|
|
13
13
|
* Options for {@link prompt}.
|
|
14
14
|
*/
|
|
15
|
-
export interface PromptParams {
|
|
16
|
-
/**
|
|
17
|
-
* An Obsidian app instance.
|
|
18
|
-
*/
|
|
19
|
-
readonly app: App;
|
|
15
|
+
export interface PromptParams extends ModalParamsBase {
|
|
20
16
|
/**
|
|
21
17
|
* A text for the "Cancel" button.
|
|
22
18
|
*/
|
|
@@ -33,7 +33,6 @@ import { CssClass } from "../../css-class.mjs";
|
|
|
33
33
|
import { noop } from "../../function.mjs";
|
|
34
34
|
import { t } from "../i18n/i18n.mjs";
|
|
35
35
|
import {
|
|
36
|
-
addCssClass,
|
|
37
36
|
ModalBase,
|
|
38
37
|
showModal
|
|
39
38
|
} from "./modal.mjs";
|
|
@@ -45,8 +44,9 @@ class PromptModal extends ModalBase {
|
|
|
45
44
|
title;
|
|
46
45
|
value;
|
|
47
46
|
valueValidator;
|
|
48
|
-
constructor(params
|
|
49
|
-
super(
|
|
47
|
+
constructor(params) {
|
|
48
|
+
super(params);
|
|
49
|
+
this.addCssClasses(CssClass.PromptModal);
|
|
50
50
|
this.cancelButtonText = params.cancelButtonText ?? t(($) => $.obsidianDevUtils.buttons.cancel);
|
|
51
51
|
this.okButtonText = params.okButtonText ?? t(($) => $.obsidianDevUtils.buttons.ok);
|
|
52
52
|
this.placeholder = params.placeholder ?? "";
|
|
@@ -55,7 +55,7 @@ class PromptModal extends ModalBase {
|
|
|
55
55
|
this.value = params.defaultValue ?? "";
|
|
56
56
|
}
|
|
57
57
|
onClose() {
|
|
58
|
-
this.
|
|
58
|
+
this.promiseResolve(this.isOkClicked ? this.value : null);
|
|
59
59
|
}
|
|
60
60
|
onOpen() {
|
|
61
61
|
this.titleEl.setText(this.title);
|
|
@@ -105,9 +105,14 @@ class PromptModal extends ModalBase {
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
async function prompt(params) {
|
|
108
|
-
return await showModal(
|
|
108
|
+
return await showModal(
|
|
109
|
+
(promiseResolve) => new PromptModal({
|
|
110
|
+
...params,
|
|
111
|
+
promiseResolve
|
|
112
|
+
})
|
|
113
|
+
);
|
|
109
114
|
}
|
|
110
115
|
export {
|
|
111
116
|
prompt
|
|
112
117
|
};
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL21vZGFscy9wcm9tcHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgcHJvbXB0IG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBwcm9tcHRzIHRoZSB1c2VyIGZvciBpbnB1dC4gVGhlIG1vZGFsIGluY2x1ZGVzIFwiT0tcIiBhbmQgXCJDYW5jZWxcIiBidXR0b25zLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7XG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgVGV4dENvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgTWF5YmVSZXR1cm4gfSBmcm9tICcuLi8uLi90eXBlLnRzJztcbmltcG9ydCB0eXBlIHtcbiAgTW9kYWxCYXNlQ29uc3RydWN0b3JQYXJhbXMsXG4gIE1vZGFsUGFyYW1zQmFzZVxufSBmcm9tICcuL21vZGFsLnRzJztcblxuaW1wb3J0IHtcbiAgY29udmVydEFzeW5jVG9TeW5jLFxuICBpbnZva2VBc3luY1NhZmVseVxufSBmcm9tICcuLi8uLi9hc3luYy50cyc7XG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vLi4vZnVuY3Rpb24udHMnO1xuaW1wb3J0IHsgdCB9IGZyb20gJy4uL2kxOG4vaTE4bi50cyc7XG5pbXBvcnQge1xuICBNb2RhbEJhc2UsXG4gIHNob3dNb2RhbFxufSBmcm9tICcuL21vZGFsLnRzJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciB7QGxpbmsgcHJvbXB0fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9tcHRQYXJhbXMgZXh0ZW5kcyBNb2RhbFBhcmFtc0Jhc2Uge1xuICAvKipcbiAgICogQSB0ZXh0IGZvciB0aGUgXCJDYW5jZWxcIiBidXR0b24uXG4gICAqL1xuICByZWFkb25seSBjYW5jZWxCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGRlZmF1bHQgdmFsdWUgdG8gcHJlLWZpbGwgdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHRleHQgZm9yIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgcmVhZG9ubHkgb2tCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dCBmaWVsZC5cbiAgICovXG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICovXG4gIHJlYWRvbmx5IHRpdGxlPzogRG9jdW1lbnRGcmFnbWVudCB8IHN0cmluZztcblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB0byB2YWxpZGF0ZSB0aGUgaW5wdXQgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byB2YWxpZGF0ZS5cbiAgICogQHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZSBpZiB0aGUgdmFsdWUgaXMgaW52YWxpZCwgb3IgYG51bGxgIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZC5cbiAgICovXG4gIHZhbHVlVmFsaWRhdG9yPyh0aGlzOiB2b2lkLCB2YWx1ZTogc3RyaW5nKTogUHJvbWlzYWJsZTxNYXliZVJldHVybjxzdHJpbmc+Pjtcbn1cblxudHlwZSBQcm9tcHRNb2RhbENvbnN0cnVjdG9yUGFyYW1zID0gTW9kYWxCYXNlQ29uc3RydWN0b3JQYXJhbXM8bnVsbCB8IHN0cmluZz4gJiBQcm9tcHRQYXJhbXM7XG5cbmNsYXNzIFByb21wdE1vZGFsIGV4dGVuZHMgTW9kYWxCYXNlPG51bGwgfCBzdHJpbmc+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBjYW5jZWxCdXR0b25UZXh0OiBzdHJpbmc7XG4gIHByaXZhdGUgaXNPa0NsaWNrZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSByZWFkb25seSBva0J1dHRvblRleHQ6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlOiBEb2N1bWVudEZyYWdtZW50IHwgc3RyaW5nO1xuICBwcml2YXRlIHZhbHVlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsdWVWYWxpZGF0b3I6ICh2YWx1ZTogc3RyaW5nKSA9PiBQcm9taXNhYmxlPE1heWJlUmV0dXJuPHN0cmluZz4+O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IFByb21wdE1vZGFsQ29uc3RydWN0b3JQYXJhbXMpIHtcbiAgICBzdXBlcihwYXJhbXMpO1xuICAgIHRoaXMuYWRkQ3NzQ2xhc3NlcyhDc3NDbGFzcy5Qcm9tcHRNb2RhbCk7XG4gICAgdGhpcy5jYW5jZWxCdXR0b25UZXh0ID0gcGFyYW1zLmNhbmNlbEJ1dHRvblRleHQgPz8gdCgoJCkgPT4gJC5vYnNpZGlhbkRldlV0aWxzLmJ1dHRvbnMuY2FuY2VsKTtcbiAgICB0aGlzLm9rQnV0dG9uVGV4dCA9IHBhcmFtcy5va0J1dHRvblRleHQgPz8gdCgoJCkgPT4gJC5vYnNpZGlhbkRldlV0aWxzLmJ1dHRvbnMub2spO1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSBwYXJhbXMucGxhY2Vob2xkZXIgPz8gJyc7XG4gICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZSA/PyAnJztcbiAgICB0aGlzLnZhbHVlVmFsaWRhdG9yID0gcGFyYW1zLnZhbHVlVmFsaWRhdG9yID8/IG5vb3A7XG4gICAgdGhpcy52YWx1ZSA9IHBhcmFtcy5kZWZhdWx0VmFsdWUgPz8gJyc7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLnByb21pc2VSZXNvbHZlKHRoaXMuaXNPa0NsaWNrZWQgPyB0aGlzLnZhbHVlIDogbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVFbC5zZXRUZXh0KHRoaXMudGl0bGUpO1xuICAgIGNvbnN0IHRleHRDb21wb25lbnQgPSBuZXcgVGV4dENvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgY29uc3QgaW5wdXRFbCA9IHRleHRDb21wb25lbnQuaW5wdXRFbDtcblxuICAgIGNvbnN0IHZhbGlkYXRlID0gYXN5bmMgKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gYXdhaXQgdGhpcy52YWx1ZVZhbGlkYXRvcihpbnB1dEVsLnZhbHVlKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgICBpbnB1dEVsLnNldEN1c3RvbVZhbGlkaXR5KGVycm9yTWVzc2FnZSA/PyAnJyk7XG4gICAgICBpbnB1dEVsLnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgfTtcblxuICAgIHRleHRDb21wb25lbnQuc2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLnNlbGVjdCgpO1xuICAgIHRleHRDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIodGhpcy5wbGFjZWhvbGRlcik7XG4gICAgaW5wdXRFbC5hZGRDbGFzcyhDc3NDbGFzcy5UZXh0Qm94KTtcbiAgICB0ZXh0Q29tcG9uZW50Lm9uQ2hhbmdlKChuZXdWYWx1ZSkgPT4ge1xuICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgIH0pO1xuICAgIGlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICB0aGlzLmhhbmRsZU9rKGV2ZW50LCB0ZXh0Q29tcG9uZW50KTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsIGNvbnZlcnRBc3luY1RvU3luYyh2YWxpZGF0ZSkpO1xuICAgIGlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXMnLCBjb252ZXJ0QXN5bmNUb1N5bmModmFsaWRhdGUpKTtcbiAgICBpbnZva2VBc3luY1NhZmVseSh2YWxpZGF0ZSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub2tCdXR0b25UZXh0KTtcbiAgICBva0J1dHRvbi5zZXRDdGEoKTtcbiAgICBva0J1dHRvbi5vbkNsaWNrKChldmVudCkgPT4ge1xuICAgICAgdGhpcy5oYW5kbGVPayhldmVudCwgdGV4dENvbXBvbmVudCk7XG4gICAgfSk7XG4gICAgb2tCdXR0b24uc2V0Q2xhc3MoQ3NzQ2xhc3MuT2tCdXR0b24pO1xuICAgIGNvbnN0IGNhbmNlbEJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIGNhbmNlbEJ1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMuY2FuY2VsQnV0dG9uVGV4dCk7XG4gICAgY2FuY2VsQnV0dG9uLm9uQ2xpY2sodGhpcy5jbG9zZS5iaW5kKHRoaXMpKTtcbiAgICBjYW5jZWxCdXR0b24uc2V0Q2xhc3MoQ3NzQ2xhc3MuQ2FuY2VsQnV0dG9uKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlT2soZXZlbnQ6IEV2ZW50LCB0ZXh0Q29tcG9uZW50OiBUZXh0Q29tcG9uZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAoIXRleHRDb21wb25lbnQuaW5wdXRFbC5jaGVja1ZhbGlkaXR5KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzT2tDbGlja2VkID0gdHJ1ZTtcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhIHByb21wdCBtb2RhbCBpbiBPYnNpZGlhbiB0byBnZXQgdXNlciBpbnB1dC5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBwcm9tcHQgbW9kYWwuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHVzZXIgaW5wdXQgb3IgYG51bGxgIGlmIHRoZSBwcm9tcHQgd2FzIGNhbmNlbGxlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb21wdChwYXJhbXM6IFByb21wdFBhcmFtcyk6IFByb21pc2U8bnVsbCB8IHN0cmluZz4ge1xuICByZXR1cm4gYXdhaXQgc2hvd01vZGFsPG51bGwgfCBzdHJpbmc+KChwcm9taXNlUmVzb2x2ZSkgPT5cbiAgICBuZXcgUHJvbXB0TW9kYWwoe1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgcHJvbWlzZVJlc29sdmVcbiAgICB9KVxuICApO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVFQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyxZQUFZO0FBQ3JCLFNBQVMsU0FBUztBQUNsQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQTBDUCxNQUFNLG9CQUFvQixVQUF5QjtBQUFBLEVBQ2hDO0FBQUEsRUFDVCxjQUFjO0FBQUEsRUFDTDtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDVDtBQUFBLEVBQ1M7QUFBQSxFQUVWLFlBQVksUUFB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
|
|
@@ -6,21 +6,13 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This module exports a function to display a modal that allows the user to select an item from a list. The modal uses fuzzy search to help the user find the item.
|
|
8
8
|
*/
|
|
9
|
-
import type {
|
|
9
|
+
import type { ModalParamsBase } from './modal.mjs';
|
|
10
10
|
/**
|
|
11
11
|
* Options for {@link selectItem}.
|
|
12
12
|
*
|
|
13
13
|
* @typeParam T - The type of the selectable items.
|
|
14
14
|
*/
|
|
15
|
-
export interface SelectItemParams<T> {
|
|
16
|
-
/**
|
|
17
|
-
* An Obsidian app instance.
|
|
18
|
-
*/
|
|
19
|
-
readonly app: App;
|
|
20
|
-
/**
|
|
21
|
-
* A CSS class to apply to the modal.
|
|
22
|
-
*/
|
|
23
|
-
readonly cssClass?: string;
|
|
15
|
+
export interface SelectItemParams<T> extends ModalParamsBase {
|
|
24
16
|
/**
|
|
25
17
|
* A list of items to choose from.
|
|
26
18
|
*/
|
|
@@ -31,7 +23,7 @@ export interface SelectItemParams<T> {
|
|
|
31
23
|
* @param item - The item to get the display text for.
|
|
32
24
|
* @returns The display text for the item.
|
|
33
25
|
*/
|
|
34
|
-
itemTextFunc(item: T): string;
|
|
26
|
+
itemTextFunc(this: void, item: T): string;
|
|
35
27
|
/**
|
|
36
28
|
* A placeholder text for the input field.
|
|
37
29
|
*/
|