obsidian-dev-utils 18.0.5 → 18.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,39 +8,33 @@ if you want to view the source, please visit the github repository of this plugi
8
8
  import {
9
9
  App,
10
10
  ButtonComponent,
11
- Modal,
12
11
  TextComponent
13
12
  } from "obsidian";
13
+ import { convertAsyncToSync } from "../../Async.mjs";
14
14
  import { CssClass } from "../../CssClass.mjs";
15
- import { getPluginId } from "../Plugin/PluginId.mjs";
16
- class PromptModal extends Modal {
15
+ import { noop } from "../../Function.mjs";
16
+ import {
17
+ ModalBase,
18
+ showModal
19
+ } from "./ModalBase.mjs";
20
+ class PromptModal extends ModalBase {
21
+ isOkClicked = false;
22
+ options;
23
+ value;
17
24
  constructor(options, resolve) {
18
- super(options.app);
19
- this.resolve = resolve;
25
+ super(options, resolve, CssClass.PromptModal);
20
26
  const DEFAULT_OPTIONS = {
21
27
  app: options.app,
22
- cancelButtonStyles: {},
23
28
  cancelButtonText: "Cancel",
24
29
  defaultValue: "",
25
- okButtonStyles: {
26
- marginRight: "10px",
27
- marginTop: "20px"
28
- },
29
30
  okButtonText: "OK",
30
31
  placeholder: "",
31
- textBoxStyles: {
32
- width: "100%"
33
- },
34
32
  title: "",
35
- valueValidator: () => null
33
+ valueValidator: noop
36
34
  };
37
35
  this.options = { ...DEFAULT_OPTIONS, ...options };
38
36
  this.value = options.defaultValue ?? "";
39
- this.containerEl.addClass(CssClass.LibraryName, getPluginId(), CssClass.PromptModal);
40
37
  }
41
- isOkClicked = false;
42
- options;
43
- value;
44
38
  onClose() {
45
39
  this.resolve(this.isOkClicked ? this.value : null);
46
40
  }
@@ -49,7 +43,7 @@ class PromptModal extends Modal {
49
43
  const textComponent = new TextComponent(this.contentEl);
50
44
  textComponent.setValue(this.value);
51
45
  textComponent.setPlaceholder(this.options.placeholder);
52
- Object.assign(textComponent.inputEl.style, this.options.textBoxStyles);
46
+ textComponent.inputEl.addClass(CssClass.TextBox);
53
47
  textComponent.onChange((newValue) => {
54
48
  this.value = newValue;
55
49
  });
@@ -60,22 +54,25 @@ class PromptModal extends Modal {
60
54
  this.close();
61
55
  }
62
56
  });
63
- textComponent.inputEl.addEventListener("input", () => {
64
- const errorMessage = this.options.valueValidator(textComponent.inputEl.value);
65
- textComponent.inputEl.setCustomValidity(errorMessage ?? "");
66
- textComponent.inputEl.reportValidity();
67
- });
57
+ textComponent.inputEl.addEventListener(
58
+ "input",
59
+ convertAsyncToSync(async () => {
60
+ const errorMessage = await this.options.valueValidator(textComponent.inputEl.value);
61
+ textComponent.inputEl.setCustomValidity(errorMessage ?? "");
62
+ textComponent.inputEl.reportValidity();
63
+ })
64
+ );
68
65
  const okButton = new ButtonComponent(this.contentEl);
69
66
  okButton.setButtonText(this.options.okButtonText);
70
67
  okButton.setCta();
71
68
  okButton.onClick((event) => {
72
69
  this.handleOk(event, textComponent);
73
70
  });
74
- Object.assign(okButton.buttonEl.style, this.options.okButtonStyles);
71
+ okButton.setClass(CssClass.OkButton);
75
72
  const cancelButton = new ButtonComponent(this.contentEl);
76
73
  cancelButton.setButtonText(this.options.cancelButtonText);
77
74
  cancelButton.onClick(this.close.bind(this));
78
- Object.assign(cancelButton.buttonEl.style, this.options.cancelButtonStyles);
75
+ cancelButton.setClass(CssClass.CancelButton);
79
76
  }
80
77
  handleOk(event, textComponent) {
81
78
  event.preventDefault();
@@ -87,12 +84,9 @@ class PromptModal extends Modal {
87
84
  }
88
85
  }
89
86
  async function prompt(options) {
90
- return await new Promise((resolve) => {
91
- const modal = new PromptModal(options, resolve);
92
- modal.open();
93
- });
87
+ return await showModal((resolve) => new PromptModal(options, resolve));
94
88
  }
95
89
  export {
96
90
  prompt
97
91
  };
98
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9Qcm9tcHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFByb21wdFxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBhIHByb21wdCBtb2RhbCBpbiBPYnNpZGlhbi5cbiAqXG4gKiBUaGlzIG1vZHVsZSBleHBvcnRzIGEgZnVuY3Rpb24gdG8gZGlzcGxheSBhIG1vZGFsIHRoYXQgcHJvbXB0cyB0aGUgdXNlciBmb3IgaW5wdXQuIFRoZSBtb2RhbCBpbmNsdWRlcyBcIk9LXCIgYW5kIFwiQ2FuY2VsXCIgYnV0dG9ucy5cbiAqL1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgTW9kYWwsXG4gIFRleHRDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IGdldFBsdWdpbklkIH0gZnJvbSAnLi4vUGx1Z2luL1BsdWdpbklkLnRzJztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyBmb3IgdGhlIHByb21wdCBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9tcHRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHN0eWxlcyB0byBhcHBseSB0byB0aGUgXCJDYW5jZWxcIiBidXR0b24uXG4gICAqL1xuICBjYW5jZWxCdXR0b25TdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuXG4gIC8qKlxuICAgKiBUaGUgdGV4dCBmb3IgdGhlIFwiQ2FuY2VsXCIgYnV0dG9uLlxuICAgKi9cbiAgY2FuY2VsQnV0dG9uVGV4dD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgdmFsdWUgdG8gcHJlLWZpbGwgdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3R5bGVzIHRvIGFwcGx5IHRvIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25TdHlsZXM/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuXG4gIC8qKlxuICAgKiBUaGUgdGV4dCBmb3IgdGhlIFwiT0tcIiBidXR0b24uXG4gICAqL1xuICBva0J1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0eWxlcyB0byBhcHBseSB0byB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICB0ZXh0Qm94U3R5bGVzPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcblxuICAvKipcbiAgICogVGhlIHRpdGxlIG9mIHRoZSBtb2RhbC5cbiAgICovXG4gIHRpdGxlPzogRG9jdW1lbnRGcmFnbWVudCB8IHN0cmluZztcblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB0byB2YWxpZGF0ZSB0aGUgaW5wdXQgdmFsdWUuXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byB2YWxpZGF0ZS5cbiAgICogQHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZSBpZiB0aGUgdmFsdWUgaXMgaW52YWxpZCwgb3IgbnVsbCBpZiB0aGUgdmFsdWUgaXMgdmFsaWQuXG4gICAqL1xuICB2YWx1ZVZhbGlkYXRvcj86ICh2YWx1ZTogc3RyaW5nKSA9PiBudWxsIHwgc3RyaW5nO1xufVxuXG5jbGFzcyBQcm9tcHRNb2RhbCBleHRlbmRzIE1vZGFsIHtcbiAgcHJpdmF0ZSBpc09rQ2xpY2tlZCA9IGZhbHNlO1xuICBwcml2YXRlIG9wdGlvbnM6IFJlcXVpcmVkPFByb21wdE9wdGlvbnM+O1xuICBwcml2YXRlIHZhbHVlOiBzdHJpbmc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IFByb21wdE9wdGlvbnMsIHByaXZhdGUgcmVzb2x2ZTogKHZhbHVlOiBudWxsIHwgc3RyaW5nKSA9PiB2b2lkKSB7XG4gICAgc3VwZXIob3B0aW9ucy5hcHApO1xuICAgIGNvbnN0IERFRkFVTFRfT1BUSU9OUzogUmVxdWlyZWQ8UHJvbXB0T3B0aW9ucz4gPSB7XG4gICAgICBhcHA6IG9wdGlvbnMuYXBwLFxuICAgICAgY2FuY2VsQnV0dG9uU3R5bGVzOiB7fSxcbiAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICdDYW5jZWwnLFxuICAgICAgZGVmYXVsdFZhbHVlOiAnJyxcbiAgICAgIG9rQnV0dG9uU3R5bGVzOiB7XG4gICAgICAgIG1hcmdpblJpZ2h0OiAnMTBweCcsXG4gICAgICAgIG1hcmdpblRvcDogJzIwcHgnXG4gICAgICB9LFxuICAgICAgb2tCdXR0b25UZXh0OiAnT0snLFxuICAgICAgcGxhY2Vob2xkZXI6ICcnLFxuICAgICAgdGV4dEJveFN0eWxlczoge1xuICAgICAgICB3aWR0aDogJzEwMCUnXG4gICAgICB9LFxuICAgICAgdGl0bGU6ICcnLFxuICAgICAgdmFsdWVWYWxpZGF0b3I6ICgpID0+IG51bGxcbiAgICB9O1xuICAgIHRoaXMub3B0aW9ucyA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zIH07XG4gICAgdGhpcy52YWx1ZSA9IG9wdGlvbnMuZGVmYXVsdFZhbHVlID8/ICcnO1xuICAgIHRoaXMuY29udGFpbmVyRWwuYWRkQ2xhc3MoQ3NzQ2xhc3MuTGlicmFyeU5hbWUsIGdldFBsdWdpbklkKCksIENzc0NsYXNzLlByb21wdE1vZGFsKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZSh0aGlzLmlzT2tDbGlja2VkID8gdGhpcy52YWx1ZSA6IG51bGwpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uT3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLnRpdGxlRWwuc2V0VGV4dCh0aGlzLm9wdGlvbnMudGl0bGUpO1xuICAgIGNvbnN0IHRleHRDb21wb25lbnQgPSBuZXcgVGV4dENvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgdGV4dENvbXBvbmVudC5zZXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICB0ZXh0Q29tcG9uZW50LnNldFBsYWNlaG9sZGVyKHRoaXMub3B0aW9ucy5wbGFjZWhvbGRlcik7XG4gICAgT2JqZWN0LmFzc2lnbih0ZXh0Q29tcG9uZW50LmlucHV0RWwuc3R5bGUsIHRoaXMub3B0aW9ucy50ZXh0Qm94U3R5bGVzKTtcbiAgICB0ZXh0Q29tcG9uZW50Lm9uQ2hhbmdlKChuZXdWYWx1ZSkgPT4ge1xuICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgIH0pO1xuICAgIHRleHRDb21wb25lbnQuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgIHRoaXMuaGFuZGxlT2soZXZlbnQsIHRleHRDb21wb25lbnQpO1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCAoKSA9PiB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSB0aGlzLm9wdGlvbnMudmFsdWVWYWxpZGF0b3IodGV4dENvbXBvbmVudC5pbnB1dEVsLnZhbHVlKTtcbiAgICAgIHRleHRDb21wb25lbnQuaW5wdXRFbC5zZXRDdXN0b21WYWxpZGl0eShlcnJvck1lc3NhZ2UgPz8gJycpO1xuICAgICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5va0J1dHRvblRleHQpO1xuICAgIG9rQnV0dG9uLnNldEN0YSgpO1xuICAgIG9rQnV0dG9uLm9uQ2xpY2soKGV2ZW50KSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZU9rKGV2ZW50LCB0ZXh0Q29tcG9uZW50KTtcbiAgICB9KTtcbiAgICBPYmplY3QuYXNzaWduKG9rQnV0dG9uLmJ1dHRvbkVsLnN0eWxlLCB0aGlzLm9wdGlvbnMub2tCdXR0b25TdHlsZXMpO1xuICAgIGNvbnN0IGNhbmNlbEJ1dHRvbiA9IG5ldyBCdXR0b25Db21wb25lbnQodGhpcy5jb250ZW50RWwpO1xuICAgIGNhbmNlbEJ1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5jYW5jZWxCdXR0b25UZXh0KTtcbiAgICBjYW5jZWxCdXR0b24ub25DbGljayh0aGlzLmNsb3NlLmJpbmQodGhpcykpO1xuICAgIE9iamVjdC5hc3NpZ24oY2FuY2VsQnV0dG9uLmJ1dHRvbkVsLnN0eWxlLCB0aGlzLm9wdGlvbnMuY2FuY2VsQnV0dG9uU3R5bGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlT2soZXZlbnQ6IEV2ZW50LCB0ZXh0Q29tcG9uZW50OiBUZXh0Q29tcG9uZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAoIXRleHRDb21wb25lbnQuaW5wdXRFbC5jaGVja1ZhbGlkaXR5KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzT2tDbGlja2VkID0gdHJ1ZTtcbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhIHByb21wdCBtb2RhbCBpbiBPYnNpZGlhbiB0byBnZXQgdXNlciBpbnB1dC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgcHJvbXB0IG1vZGFsLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgdXNlciBpbnB1dCBvciBudWxsIGlmIHRoZSBwcm9tcHQgd2FzIGNhbmNlbGxlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb21wdChvcHRpb25zOiBQcm9tcHRPcHRpb25zKTogUHJvbWlzZTxudWxsIHwgc3RyaW5nPiB7XG4gIHJldHVybiBhd2FpdCBuZXcgUHJvbWlzZTxudWxsIHwgc3RyaW5nPigocmVzb2x2ZSkgPT4ge1xuICAgIGNvbnN0IG1vZGFsID0gbmV3IFByb21wdE1vZGFsKG9wdGlvbnMsIHJlc29sdmUpO1xuICAgIG1vZGFsLm9wZW4oKTtcbiAgfSk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBT0E7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUVQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsbUJBQW1CO0FBMkQ1QixNQUFNLG9CQUFvQixNQUFNO0FBQUEsRUFLdkIsWUFBWSxTQUFnQyxTQUF5QztBQUMxRixVQUFNLFFBQVEsR0FBRztBQURnQztBQUVqRCxVQUFNLGtCQUEyQztBQUFBLE1BQy9DLEtBQUssUUFBUTtBQUFBLE1BQ2Isb0JBQW9CLENBQUM7QUFBQSxNQUNyQixrQkFBa0I7QUFBQSxNQUNsQixjQUFjO0FBQUEsTUFDZCxnQkFBZ0I7QUFBQSxRQUNkLGFBQWE7QUFBQSxRQUNiLFdBQVc7QUFBQSxNQUNiO0FBQUEsTUFDQSxjQUFjO0FBQUEsTUFDZCxhQUFhO0FBQUEsTUFDYixlQUFlO0FBQUEsUUFDYixPQUFPO0FBQUEsTUFDVDtBQUFBLE1BQ0EsT0FBTztBQUFBLE1BQ1AsZ0JBQWdCLE1BQU07QUFBQSxJQUN4QjtBQUNBLFNBQUssVUFBVSxFQUFFLEdBQUcsaUJBQWlCLEdBQUcsUUFBUTtBQUNoRCxTQUFLLFFBQVEsUUFBUSxnQkFBZ0I7QUFDckMsU0FBSyxZQUFZLFNBQVMsU0FBUyxhQUFhLFlBQVksR0FBRyxTQUFTLFdBQVc7QUFBQSxFQUNyRjtBQUFBLEVBMUJRLGNBQWM7QUFBQSxFQUNkO0FBQUEsRUFDQTtBQUFBLEVBMEJRLFVBQWdCO0FBQzlCLFNBQUssUUFBUSxLQUFLLGNBQWMsS0FBSyxRQUFRLElBQUk7QUFBQSxFQUNuRDtBQUFBLEVBRWdCLFNBQWU7QUFDN0IsU0FBSyxRQUFRLFFBQVEsS0FBSyxRQUFRLEtBQUs7QUFDdkMsVUFBTSxnQkFBZ0IsSUFBSSxjQUFjLEtBQUssU0FBUztBQUN0RCxrQkFBYyxTQUFTLEtBQUssS0FBSztBQUNqQyxrQkFBYyxlQUFlLEtBQUssUUFBUSxXQUFXO0FBQ3JELFdBQU8sT0FBTyxjQUFjLFFBQVEsT0FBTyxLQUFLLFFBQVEsYUFBYTtBQUNyRSxrQkFBYyxTQUFTLENBQUMsYUFBYTtBQUNuQyxXQUFLLFFBQVE7QUFBQSxJQUNmLENBQUM7QUFDRCxrQkFBYyxRQUFRLGlCQUFpQixXQUFXLENBQUMsVUFBeUI7QUFDMUUsVUFBSSxNQUFNLFFBQVEsU0FBUztBQUN6QixhQUFLLFNBQVMsT0FBTyxhQUFhO0FBQUEsTUFDcEMsV0FBVyxNQUFNLFFBQVEsVUFBVTtBQUNqQyxhQUFLLE1BQU07QUFBQSxNQUNiO0FBQUEsSUFDRixDQUFDO0FBQ0Qsa0JBQWMsUUFBUSxpQkFBaUIsU0FBUyxNQUFNO0FBQ3BELFlBQU0sZUFBZSxLQUFLLFFBQVEsZUFBZSxjQUFjLFFBQVEsS0FBSztBQUM1RSxvQkFBYyxRQUFRLGtCQUFrQixnQkFBZ0IsRUFBRTtBQUMxRCxvQkFBYyxRQUFRLGVBQWU7QUFBQSxJQUN2QyxDQUFDO0FBQ0QsVUFBTSxXQUFXLElBQUksZ0JBQWdCLEtBQUssU0FBUztBQUNuRCxhQUFTLGNBQWMsS0FBSyxRQUFRLFlBQVk7QUFDaEQsYUFBUyxPQUFPO0FBQ2hCLGFBQVMsUUFBUSxDQUFDLFVBQVU7QUFDMUIsV0FBSyxTQUFTLE9BQU8sYUFBYTtBQUFBLElBQ3BDLENBQUM7QUFDRCxXQUFPLE9BQU8sU0FBUyxTQUFTLE9BQU8sS0FBSyxRQUFRLGNBQWM7QUFDbEUsVUFBTSxlQUFlLElBQUksZ0JBQWdCLEtBQUssU0FBUztBQUN2RCxpQkFBYSxjQUFjLEtBQUssUUFBUSxnQkFBZ0I7QUFDeEQsaUJBQWEsUUFBUSxLQUFLLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDMUMsV0FBTyxPQUFPLGFBQWEsU0FBUyxPQUFPLEtBQUssUUFBUSxrQkFBa0I7QUFBQSxFQUM1RTtBQUFBLEVBRVEsU0FBUyxPQUFjLGVBQW9DO0FBQ2pFLFVBQU0sZUFBZTtBQUNyQixRQUFJLENBQUMsY0FBYyxRQUFRLGNBQWMsR0FBRztBQUMxQztBQUFBLElBQ0Y7QUFFQSxTQUFLLGNBQWM7QUFDbkIsU0FBSyxNQUFNO0FBQUEsRUFDYjtBQUNGO0FBUUEsZUFBc0IsT0FBTyxTQUFnRDtBQUMzRSxTQUFPLE1BQU0sSUFBSSxRQUF1QixDQUFDLFlBQVk7QUFDbkQsVUFBTSxRQUFRLElBQUksWUFBWSxTQUFTLE9BQU87QUFDOUMsVUFBTSxLQUFLO0FBQUEsRUFDYixDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
92
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9Qcm9tcHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIFByb21wdFxuICogVXRpbGl0eSBmb3IgZGlzcGxheWluZyBhIHByb21wdCBtb2RhbCBpbiBPYnNpZGlhbi5cbiAqXG4gKiBUaGlzIG1vZHVsZSBleHBvcnRzIGEgZnVuY3Rpb24gdG8gZGlzcGxheSBhIG1vZGFsIHRoYXQgcHJvbXB0cyB0aGUgdXNlciBmb3IgaW5wdXQuIFRoZSBtb2RhbCBpbmNsdWRlcyBcIk9LXCIgYW5kIFwiQ2FuY2VsXCIgYnV0dG9ucy5cbiAqL1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEJ1dHRvbkNvbXBvbmVudCxcbiAgVGV4dENvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHtcbiAgTWF5YmVQcm9taXNlLFxuICBQcm9taXNlUmVzb2x2ZVxufSBmcm9tICcuLi8uLi9Bc3luYy50cyc7XG5cbmltcG9ydCB7IGNvbnZlcnRBc3luY1RvU3luYyB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vQ3NzQ2xhc3MudHMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL0Z1bmN0aW9uLnRzJztcbmltcG9ydCB7XG4gIE1vZGFsQmFzZSxcbiAgc2hvd01vZGFsXG59IGZyb20gJy4vTW9kYWxCYXNlLnRzJztcblxuLyoqXG4gKiBUaGUgb3B0aW9ucyBmb3IgdGhlIHByb21wdCBtb2RhbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9tcHRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIkNhbmNlbFwiIGJ1dHRvbi5cbiAgICovXG4gIGNhbmNlbEJ1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHZhbHVlIHRvIHByZS1maWxsIHRoZSBpbnB1dCBmaWVsZC5cbiAgICovXG4gIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRleHQgZm9yIHRoZSBcIk9LXCIgYnV0dG9uLlxuICAgKi9cbiAgb2tCdXR0b25UZXh0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGxhY2Vob2xkZXIgdGV4dCBmb3IgdGhlIGlucHV0IGZpZWxkLlxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0aXRsZSBvZiB0aGUgbW9kYWwuXG4gICAqL1xuICB0aXRsZT86IERvY3VtZW50RnJhZ21lbnQgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gdmFsaWRhdGUgdGhlIGlucHV0IHZhbHVlLlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgaW5wdXQgdmFsdWUgdG8gdmFsaWRhdGUuXG4gICAqIEByZXR1cm5zIGFuIGVycm9yIG1lc3NhZ2UgaWYgdGhlIHZhbHVlIGlzIGludmFsaWQsIG9yIG51bGwgaWYgdGhlIHZhbHVlIGlzIHZhbGlkLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1pbnZhbGlkLXZvaWQtdHlwZVxuICB2YWx1ZVZhbGlkYXRvcj86ICh2YWx1ZTogc3RyaW5nKSA9PiBNYXliZVByb21pc2U8c3RyaW5nIHwgdm9pZD47XG59XG5cbmNsYXNzIFByb21wdE1vZGFsIGV4dGVuZHMgTW9kYWxCYXNlPG51bGwgfCBzdHJpbmcsIFByb21wdE9wdGlvbnM+IHtcbiAgcHJpdmF0ZSBpc09rQ2xpY2tlZCA9IGZhbHNlO1xuICBwcml2YXRlIG9wdGlvbnM6IFJlcXVpcmVkPFByb21wdE9wdGlvbnM+O1xuICBwcml2YXRlIHZhbHVlOiBzdHJpbmc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IFByb21wdE9wdGlvbnMsIHJlc29sdmU6IFByb21pc2VSZXNvbHZlPG51bGwgfCBzdHJpbmc+KSB7XG4gICAgc3VwZXIob3B0aW9ucywgcmVzb2x2ZSwgQ3NzQ2xhc3MuUHJvbXB0TW9kYWwpO1xuICAgIGNvbnN0IERFRkFVTFRfT1BUSU9OUzogUmVxdWlyZWQ8UHJvbXB0T3B0aW9ucz4gPSB7XG4gICAgICBhcHA6IG9wdGlvbnMuYXBwLFxuICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ0NhbmNlbCcsXG4gICAgICBkZWZhdWx0VmFsdWU6ICcnLFxuICAgICAgb2tCdXR0b25UZXh0OiAnT0snLFxuICAgICAgcGxhY2Vob2xkZXI6ICcnLFxuICAgICAgdGl0bGU6ICcnLFxuICAgICAgdmFsdWVWYWxpZGF0b3I6IG5vb3BcbiAgICB9O1xuICAgIHRoaXMub3B0aW9ucyA9IHsgLi4uREVGQVVMVF9PUFRJT05TLCAuLi5vcHRpb25zIH07XG4gICAgdGhpcy52YWx1ZSA9IG9wdGlvbnMuZGVmYXVsdFZhbHVlID8/ICcnO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNvbHZlKHRoaXMuaXNPa0NsaWNrZWQgPyB0aGlzLnZhbHVlIDogbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25PcGVuKCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVFbC5zZXRUZXh0KHRoaXMub3B0aW9ucy50aXRsZSk7XG4gICAgY29uc3QgdGV4dENvbXBvbmVudCA9IG5ldyBUZXh0Q29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICB0ZXh0Q29tcG9uZW50LnNldFZhbHVlKHRoaXMudmFsdWUpO1xuICAgIHRleHRDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIodGhpcy5vcHRpb25zLnBsYWNlaG9sZGVyKTtcbiAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwuYWRkQ2xhc3MoQ3NzQ2xhc3MuVGV4dEJveCk7XG4gICAgdGV4dENvbXBvbmVudC5vbkNoYW5nZSgobmV3VmFsdWUpID0+IHtcbiAgICAgIHRoaXMudmFsdWUgPSBuZXdWYWx1ZTtcbiAgICB9KTtcbiAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICB0aGlzLmhhbmRsZU9rKGV2ZW50LCB0ZXh0Q29tcG9uZW50KTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnaW5wdXQnLFxuICAgICAgY29udmVydEFzeW5jVG9TeW5jKGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gYXdhaXQgdGhpcy5vcHRpb25zLnZhbHVlVmFsaWRhdG9yKHRleHRDb21wb25lbnQuaW5wdXRFbC52YWx1ZSkgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgICB0ZXh0Q29tcG9uZW50LmlucHV0RWwuc2V0Q3VzdG9tVmFsaWRpdHkoZXJyb3JNZXNzYWdlID8/ICcnKTtcbiAgICAgICAgdGV4dENvbXBvbmVudC5pbnB1dEVsLnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgICB9KVxuICAgICk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSBuZXcgQnV0dG9uQ29tcG9uZW50KHRoaXMuY29udGVudEVsKTtcbiAgICBva0J1dHRvbi5zZXRCdXR0b25UZXh0KHRoaXMub3B0aW9ucy5va0J1dHRvblRleHQpO1xuICAgIG9rQnV0dG9uLnNldEN0YSgpO1xuICAgIG9rQnV0dG9uLm9uQ2xpY2soKGV2ZW50KSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZU9rKGV2ZW50LCB0ZXh0Q29tcG9uZW50KTtcbiAgICB9KTtcbiAgICBva0J1dHRvbi5zZXRDbGFzcyhDc3NDbGFzcy5Pa0J1dHRvbik7XG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gbmV3IEJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbnRlbnRFbCk7XG4gICAgY2FuY2VsQnV0dG9uLnNldEJ1dHRvblRleHQodGhpcy5vcHRpb25zLmNhbmNlbEJ1dHRvblRleHQpO1xuICAgIGNhbmNlbEJ1dHRvbi5vbkNsaWNrKHRoaXMuY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgY2FuY2VsQnV0dG9uLnNldENsYXNzKENzc0NsYXNzLkNhbmNlbEJ1dHRvbik7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU9rKGV2ZW50OiBFdmVudCwgdGV4dENvbXBvbmVudDogVGV4dENvbXBvbmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKCF0ZXh0Q29tcG9uZW50LmlucHV0RWwuY2hlY2tWYWxpZGl0eSgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pc09rQ2xpY2tlZCA9IHRydWU7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBwcm9tcHQgbW9kYWwgaW4gT2JzaWRpYW4gdG8gZ2V0IHVzZXIgaW5wdXQuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIHByb21wdCBtb2RhbC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHVzZXIgaW5wdXQgb3IgbnVsbCBpZiB0aGUgcHJvbXB0IHdhcyBjYW5jZWxsZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcm9tcHQob3B0aW9uczogUHJvbXB0T3B0aW9ucyk6IFByb21pc2U8bnVsbCB8IHN0cmluZz4ge1xuICByZXR1cm4gYXdhaXQgc2hvd01vZGFsPG51bGwgfCBzdHJpbmc+KChyZXNvbHZlKSA9PiBuZXcgUHJvbXB0TW9kYWwob3B0aW9ucywgcmVzb2x2ZSkpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQU9BO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQU9QLFNBQVMsMEJBQTBCO0FBQ25DLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsWUFBWTtBQUNyQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQTZDUCxNQUFNLG9CQUFvQixVQUF3QztBQUFBLEVBQ3hELGNBQWM7QUFBQSxFQUNkO0FBQUEsRUFDQTtBQUFBLEVBRUQsWUFBWSxTQUF3QixTQUF3QztBQUNqRixVQUFNLFNBQVMsU0FBUyxTQUFTLFdBQVc7QUFDNUMsVUFBTSxrQkFBMkM7QUFBQSxNQUMvQyxLQUFLLFFBQVE7QUFBQSxNQUNiLGtCQUFrQjtBQUFBLE1BQ2xCLGNBQWM7QUFBQSxNQUNkLGNBQWM7QUFBQSxNQUNkLGFBQWE7QUFBQSxNQUNiLE9BQU87QUFBQSxNQUNQLGdCQUFnQjtBQUFBLElBQ2xCO0FBQ0EsU0FBSyxVQUFVLEVBQUUsR0FBRyxpQkFBaUIsR0FBRyxRQUFRO0FBQ2hELFNBQUssUUFBUSxRQUFRLGdCQUFnQjtBQUFBLEVBQ3ZDO0FBQUEsRUFFZ0IsVUFBZ0I7QUFDOUIsU0FBSyxRQUFRLEtBQUssY0FBYyxLQUFLLFFBQVEsSUFBSTtBQUFBLEVBQ25EO0FBQUEsRUFFZ0IsU0FBZTtBQUM3QixTQUFLLFFBQVEsUUFBUSxLQUFLLFFBQVEsS0FBSztBQUN2QyxVQUFNLGdCQUFnQixJQUFJLGNBQWMsS0FBSyxTQUFTO0FBQ3RELGtCQUFjLFNBQVMsS0FBSyxLQUFLO0FBQ2pDLGtCQUFjLGVBQWUsS0FBSyxRQUFRLFdBQVc7QUFDckQsa0JBQWMsUUFBUSxTQUFTLFNBQVMsT0FBTztBQUMvQyxrQkFBYyxTQUFTLENBQUMsYUFBYTtBQUNuQyxXQUFLLFFBQVE7QUFBQSxJQUNmLENBQUM7QUFDRCxrQkFBYyxRQUFRLGlCQUFpQixXQUFXLENBQUMsVUFBeUI7QUFDMUUsVUFBSSxNQUFNLFFBQVEsU0FBUztBQUN6QixhQUFLLFNBQVMsT0FBTyxhQUFhO0FBQUEsTUFDcEMsV0FBVyxNQUFNLFFBQVEsVUFBVTtBQUNqQyxhQUFLLE1BQU07QUFBQSxNQUNiO0FBQUEsSUFDRixDQUFDO0FBQ0Qsa0JBQWMsUUFBUTtBQUFBLE1BQ3BCO0FBQUEsTUFDQSxtQkFBbUIsWUFBWTtBQUM3QixjQUFNLGVBQWUsTUFBTSxLQUFLLFFBQVEsZUFBZSxjQUFjLFFBQVEsS0FBSztBQUNsRixzQkFBYyxRQUFRLGtCQUFrQixnQkFBZ0IsRUFBRTtBQUMxRCxzQkFBYyxRQUFRLGVBQWU7QUFBQSxNQUN2QyxDQUFDO0FBQUEsSUFDSDtBQUNBLFVBQU0sV0FBVyxJQUFJLGdCQUFnQixLQUFLLFNBQVM7QUFDbkQsYUFBUyxjQUFjLEtBQUssUUFBUSxZQUFZO0FBQ2hELGFBQVMsT0FBTztBQUNoQixhQUFTLFFBQVEsQ0FBQyxVQUFVO0FBQzFCLFdBQUssU0FBUyxPQUFPLGFBQWE7QUFBQSxJQUNwQyxDQUFDO0FBQ0QsYUFBUyxTQUFTLFNBQVMsUUFBUTtBQUNuQyxVQUFNLGVBQWUsSUFBSSxnQkFBZ0IsS0FBSyxTQUFTO0FBQ3ZELGlCQUFhLGNBQWMsS0FBSyxRQUFRLGdCQUFnQjtBQUN4RCxpQkFBYSxRQUFRLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQztBQUMxQyxpQkFBYSxTQUFTLFNBQVMsWUFBWTtBQUFBLEVBQzdDO0FBQUEsRUFFUSxTQUFTLE9BQWMsZUFBb0M7QUFDakUsVUFBTSxlQUFlO0FBQ3JCLFFBQUksQ0FBQyxjQUFjLFFBQVEsY0FBYyxHQUFHO0FBQzFDO0FBQUEsSUFDRjtBQUVBLFNBQUssY0FBYztBQUNuQixTQUFLLE1BQU07QUFBQSxFQUNiO0FBQ0Y7QUFRQSxlQUFzQixPQUFPLFNBQWdEO0FBQzNFLFNBQU8sTUFBTSxVQUF5QixDQUFDLFlBQVksSUFBSSxZQUFZLFNBQVMsT0FBTyxDQUFDO0FBQ3RGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -31,6 +31,7 @@ module.exports = __toCommonJS(SelectItem_exports);
31
31
  var import_obsidian = require('obsidian');
32
32
  var import_CssClass = require('../../CssClass.cjs');
33
33
  var import_PluginId = require('../Plugin/PluginId.cjs');
34
+ var import_ModalBase = require('./ModalBase.cjs');
34
35
  class ItemSelectModal extends import_obsidian.FuzzySuggestModal {
35
36
  constructor(options, resolve) {
36
37
  super(options.app);
@@ -38,6 +39,9 @@ class ItemSelectModal extends import_obsidian.FuzzySuggestModal {
38
39
  this.resolve = resolve;
39
40
  this.setPlaceholder(options.placeholder ?? "");
40
41
  this.containerEl.addClass(import_CssClass.CssClass.LibraryName, (0, import_PluginId.getPluginId)(), import_CssClass.CssClass.SelectItemModal);
42
+ if (options.cssClass) {
43
+ this.containerEl.addClass(options.cssClass);
44
+ }
41
45
  }
42
46
  isSelected = false;
43
47
  getItems() {
@@ -60,13 +64,10 @@ class ItemSelectModal extends import_obsidian.FuzzySuggestModal {
60
64
  }
61
65
  }
62
66
  async function selectItem(options) {
63
- return await new Promise((resolve) => {
64
- const modal = new ItemSelectModal(options, resolve);
65
- modal.open();
66
- });
67
+ return await (0, import_ModalBase.showModal)((resolve) => new ItemSelectModal(options, resolve));
67
68
  }
68
69
  // Annotate the CommonJS export names for ESM import in node:
69
70
  0 && (module.exports = {
70
71
  selectItem
71
72
  });
72
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9TZWxlY3RJdGVtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBzZWxlY3RJdGVtXG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgc2VsZWN0aW9uIG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gc2VsZWN0IGFuIGl0ZW0gZnJvbSBhIGxpc3QuIFRoZSBtb2RhbCB1c2VzIGZ1enp5IHNlYXJjaCB0byBoZWxwIHRoZSB1c2VyIGZpbmQgdGhlIGl0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBGdXp6eU1hdGNoIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEZ1enp5U3VnZ2VzdE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5JZCB9IGZyb20gJy4uL1BsdWdpbi9QbHVnaW5JZC50cyc7XG5cbi8qKlxuICogVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBzZWxlY3Rpb24gbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0SXRlbU9wdGlvbnM8VD4ge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBpdGVtcyB0byBjaG9vc2UgZnJvbS5cbiAgICovXG4gIGl0ZW1zOiBUW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBkaXNwbGF5IHRleHQgZm9yIGVhY2ggaXRlbVxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIGdldCB0aGUgZGlzcGxheSB0ZXh0IGZvci5cbiAgICogQHJldHVybnMgVGhlIGRpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW0uXG4gICAqL1xuICBpdGVtVGV4dEZ1bmM6IChpdGVtOiBUKSA9PiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbn1cblxuY2xhc3MgSXRlbVNlbGVjdE1vZGFsPFQ+IGV4dGVuZHMgRnV6enlTdWdnZXN0TW9kYWw8VD4ge1xuICBwcml2YXRlIGlzU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPiwgcHJpdmF0ZSByZXNvbHZlOiAoaXRlbTogbnVsbCB8IFQpID0+IHZvaWQpIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcihvcHRpb25zLnBsYWNlaG9sZGVyID8/ICcnKTtcbiAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKENzc0NsYXNzLkxpYnJhcnlOYW1lLCBnZXRQbHVnaW5JZCgpLCBDc3NDbGFzcy5TZWxlY3RJdGVtTW9kYWwpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldEl0ZW1zKCk6IFRbXSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pdGVtcztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRJdGVtVGV4dChpdGVtOiBUKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLml0ZW1UZXh0RnVuYyhpdGVtKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNob29zZUl0ZW0oaXRlbTogVCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZShpdGVtKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKSB7XG4gICAgICB0aGlzLnJlc29sdmUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNlbGVjdFN1Z2dlc3Rpb24oXG4gICAgdmFsdWU6IEZ1enp5TWF0Y2g8VD4sXG4gICAgZXZ0OiBLZXlib2FyZEV2ZW50IHwgTW91c2VFdmVudFxuICApOiB2b2lkIHtcbiAgICB0aGlzLmlzU2VsZWN0ZWQgPSB0cnVlO1xuICAgIHN1cGVyLnNlbGVjdFN1Z2dlc3Rpb24odmFsdWUsIGV2dCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhIHNlbGVjdGlvbiBtb2RhbCBpbiBPYnNpZGlhbiBmb3IgY2hvb3NpbmcgYW4gaXRlbSBmcm9tIGEgbGlzdC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgc2VsZWN0aW9uIG1vZGFsLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgc2VsZWN0ZWQgaXRlbSBvciBudWxsIGlmIG5vIGl0ZW0gd2FzIHNlbGVjdGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VsZWN0SXRlbTxUPihvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPik6IFByb21pc2U8bnVsbCB8IFQ+IHtcbiAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPG51bGwgfCBUPigocmVzb2x2ZSkgPT4ge1xuICAgIGNvbnN0IG1vZGFsID0gbmV3IEl0ZW1TZWxlY3RNb2RhbDxUPihvcHRpb25zLCByZXNvbHZlKTtcbiAgICBtb2RhbC5vcGVuKCk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQSxzQkFHTztBQUVQLHNCQUF5QjtBQUN6QixzQkFBNEI7QUE2QjVCLE1BQU0sd0JBQTJCLGtDQUFxQjtBQUFBLEVBRzdDLFlBQW9CLFNBQXVDLFNBQW1DO0FBQ25HLFVBQU0sUUFBUSxHQUFHO0FBRFE7QUFBdUM7QUFFaEUsU0FBSyxlQUFlLFFBQVEsZUFBZSxFQUFFO0FBQzdDLFNBQUssWUFBWSxTQUFTLHlCQUFTLGlCQUFhLDZCQUFZLEdBQUcseUJBQVMsZUFBZTtBQUFBLEVBQ3pGO0FBQUEsRUFOUSxhQUFhO0FBQUEsRUFRTCxXQUFnQjtBQUM5QixXQUFPLEtBQUssUUFBUTtBQUFBLEVBQ3RCO0FBQUEsRUFFZ0IsWUFBWSxNQUFpQjtBQUMzQyxXQUFPLEtBQUssUUFBUSxhQUFhLElBQUk7QUFBQSxFQUN2QztBQUFBLEVBRWdCLGFBQWEsTUFBZTtBQUMxQyxTQUFLLFFBQVEsSUFBSTtBQUFBLEVBQ25CO0FBQUEsRUFFZ0IsVUFBZ0I7QUFDOUIsUUFBSSxDQUFDLEtBQUssWUFBWTtBQUNwQixXQUFLLFFBQVEsSUFBSTtBQUFBLElBQ25CO0FBQUEsRUFDRjtBQUFBLEVBRWdCLGlCQUNkLE9BQ0EsS0FDTTtBQUNOLFNBQUssYUFBYTtBQUNsQixVQUFNLGlCQUFpQixPQUFPLEdBQUc7QUFBQSxFQUNuQztBQUNGO0FBUUEsZUFBc0IsV0FBYyxTQUFrRDtBQUNwRixTQUFPLE1BQU0sSUFBSSxRQUFrQixDQUFDLFlBQVk7QUFDOUMsVUFBTSxRQUFRLElBQUksZ0JBQW1CLFNBQVMsT0FBTztBQUNyRCxVQUFNLEtBQUs7QUFBQSxFQUNiLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFtdCn0K
73
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9TZWxlY3RJdGVtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBzZWxlY3RJdGVtXG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgc2VsZWN0aW9uIG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gc2VsZWN0IGFuIGl0ZW0gZnJvbSBhIGxpc3QuIFRoZSBtb2RhbCB1c2VzIGZ1enp5IHNlYXJjaCB0byBoZWxwIHRoZSB1c2VyIGZpbmQgdGhlIGl0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBGdXp6eU1hdGNoIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEZ1enp5U3VnZ2VzdE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBQcm9taXNlUmVzb2x2ZSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5JZCB9IGZyb20gJy4uL1BsdWdpbi9QbHVnaW5JZC50cyc7XG5pbXBvcnQgeyBzaG93TW9kYWwgfSBmcm9tICcuL01vZGFsQmFzZS50cyc7XG5cbi8qKlxuICogVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBzZWxlY3Rpb24gbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0SXRlbU9wdGlvbnM8VD4ge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgQ1NTIGNsYXNzIHRvIGFwcGx5IHRvIHRoZSBtb2RhbC5cbiAgICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBpdGVtcyB0byBjaG9vc2UgZnJvbS5cbiAgICovXG4gIGl0ZW1zOiBUW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBkaXNwbGF5IHRleHQgZm9yIGVhY2ggaXRlbVxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIGdldCB0aGUgZGlzcGxheSB0ZXh0IGZvci5cbiAgICogQHJldHVybnMgVGhlIGRpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW0uXG4gICAqL1xuICBpdGVtVGV4dEZ1bmM6IChpdGVtOiBUKSA9PiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbn1cblxuY2xhc3MgSXRlbVNlbGVjdE1vZGFsPFQ+IGV4dGVuZHMgRnV6enlTdWdnZXN0TW9kYWw8VD4ge1xuICBwcml2YXRlIGlzU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPiwgcHJpdmF0ZSByZXNvbHZlOiBQcm9taXNlUmVzb2x2ZTxudWxsIHwgVD4pIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcihvcHRpb25zLnBsYWNlaG9sZGVyID8/ICcnKTtcbiAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKENzc0NsYXNzLkxpYnJhcnlOYW1lLCBnZXRQbHVnaW5JZCgpLCBDc3NDbGFzcy5TZWxlY3RJdGVtTW9kYWwpO1xuICAgIGlmIChvcHRpb25zLmNzc0NsYXNzKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKG9wdGlvbnMuY3NzQ2xhc3MpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRJdGVtcygpOiBUW10ge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuaXRlbXM7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0SXRlbVRleHQoaXRlbTogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pdGVtVGV4dEZ1bmMoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DaG9vc2VJdGVtKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLnJlc29sdmUoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNTZWxlY3RlZCkge1xuICAgICAgdGhpcy5yZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBzZWxlY3RTdWdnZXN0aW9uKFxuICAgIHZhbHVlOiBGdXp6eU1hdGNoPFQ+LFxuICAgIGV2dDogS2V5Ym9hcmRFdmVudCB8IE1vdXNlRXZlbnRcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICBzdXBlci5zZWxlY3RTdWdnZXN0aW9uKHZhbHVlLCBldnQpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBzZWxlY3Rpb24gbW9kYWwgaW4gT2JzaWRpYW4gZm9yIGNob29zaW5nIGFuIGl0ZW0gZnJvbSBhIGxpc3QuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIHNlbGVjdGlvbiBtb2RhbC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHNlbGVjdGVkIGl0ZW0gb3IgbnVsbCBpZiBubyBpdGVtIHdhcyBzZWxlY3RlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbGVjdEl0ZW08VD4ob3B0aW9uczogU2VsZWN0SXRlbU9wdGlvbnM8VD4pOiBQcm9taXNlPG51bGwgfCBUPiB7XG4gIHJldHVybiBhd2FpdCBzaG93TW9kYWw8bnVsbCB8IFQ+KChyZXNvbHZlKSA9PiBuZXcgSXRlbVNlbGVjdE1vZGFsKG9wdGlvbnMsIHJlc29sdmUpKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0Esc0JBR087QUFJUCxzQkFBeUI7QUFDekIsc0JBQTRCO0FBQzVCLHVCQUEwQjtBQWtDMUIsTUFBTSx3QkFBMkIsa0NBQXFCO0FBQUEsRUFHN0MsWUFBb0IsU0FBdUMsU0FBbUM7QUFDbkcsVUFBTSxRQUFRLEdBQUc7QUFEUTtBQUF1QztBQUVoRSxTQUFLLGVBQWUsUUFBUSxlQUFlLEVBQUU7QUFDN0MsU0FBSyxZQUFZLFNBQVMseUJBQVMsaUJBQWEsNkJBQVksR0FBRyx5QkFBUyxlQUFlO0FBQ3ZGLFFBQUksUUFBUSxVQUFVO0FBQ3BCLFdBQUssWUFBWSxTQUFTLFFBQVEsUUFBUTtBQUFBLElBQzVDO0FBQUEsRUFDRjtBQUFBLEVBVFEsYUFBYTtBQUFBLEVBV0wsV0FBZ0I7QUFDOUIsV0FBTyxLQUFLLFFBQVE7QUFBQSxFQUN0QjtBQUFBLEVBRWdCLFlBQVksTUFBaUI7QUFDM0MsV0FBTyxLQUFLLFFBQVEsYUFBYSxJQUFJO0FBQUEsRUFDdkM7QUFBQSxFQUVnQixhQUFhLE1BQWU7QUFDMUMsU0FBSyxRQUFRLElBQUk7QUFBQSxFQUNuQjtBQUFBLEVBRWdCLFVBQWdCO0FBQzlCLFFBQUksQ0FBQyxLQUFLLFlBQVk7QUFDcEIsV0FBSyxRQUFRLElBQUk7QUFBQSxJQUNuQjtBQUFBLEVBQ0Y7QUFBQSxFQUVnQixpQkFDZCxPQUNBLEtBQ007QUFDTixTQUFLLGFBQWE7QUFDbEIsVUFBTSxpQkFBaUIsT0FBTyxHQUFHO0FBQUEsRUFDbkM7QUFDRjtBQVFBLGVBQXNCLFdBQWMsU0FBa0Q7QUFDcEYsU0FBTyxVQUFNLDRCQUFvQixDQUFDLFlBQVksSUFBSSxnQkFBZ0IsU0FBUyxPQUFPLENBQUM7QUFDckY7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -13,6 +13,10 @@ export interface SelectItemOptions<T> {
13
13
  * The Obsidian app instance.
14
14
  */
15
15
  app: App;
16
+ /**
17
+ * The CSS class to apply to the modal.
18
+ */
19
+ cssClass?: string;
16
20
  /**
17
21
  * The list of items to choose from.
18
22
  */
@@ -11,6 +11,7 @@ import {
11
11
  } from "obsidian";
12
12
  import { CssClass } from "../../CssClass.mjs";
13
13
  import { getPluginId } from "../Plugin/PluginId.mjs";
14
+ import { showModal } from "./ModalBase.mjs";
14
15
  class ItemSelectModal extends FuzzySuggestModal {
15
16
  constructor(options, resolve) {
16
17
  super(options.app);
@@ -18,6 +19,9 @@ class ItemSelectModal extends FuzzySuggestModal {
18
19
  this.resolve = resolve;
19
20
  this.setPlaceholder(options.placeholder ?? "");
20
21
  this.containerEl.addClass(CssClass.LibraryName, getPluginId(), CssClass.SelectItemModal);
22
+ if (options.cssClass) {
23
+ this.containerEl.addClass(options.cssClass);
24
+ }
21
25
  }
22
26
  isSelected = false;
23
27
  getItems() {
@@ -40,12 +44,9 @@ class ItemSelectModal extends FuzzySuggestModal {
40
44
  }
41
45
  }
42
46
  async function selectItem(options) {
43
- return await new Promise((resolve) => {
44
- const modal = new ItemSelectModal(options, resolve);
45
- modal.open();
46
- });
47
+ return await showModal((resolve) => new ItemSelectModal(options, resolve));
47
48
  }
48
49
  export {
49
50
  selectItem
50
51
  };
51
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9TZWxlY3RJdGVtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBzZWxlY3RJdGVtXG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgc2VsZWN0aW9uIG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gc2VsZWN0IGFuIGl0ZW0gZnJvbSBhIGxpc3QuIFRoZSBtb2RhbCB1c2VzIGZ1enp5IHNlYXJjaCB0byBoZWxwIHRoZSB1c2VyIGZpbmQgdGhlIGl0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBGdXp6eU1hdGNoIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEZ1enp5U3VnZ2VzdE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5JZCB9IGZyb20gJy4uL1BsdWdpbi9QbHVnaW5JZC50cyc7XG5cbi8qKlxuICogVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBzZWxlY3Rpb24gbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0SXRlbU9wdGlvbnM8VD4ge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBpdGVtcyB0byBjaG9vc2UgZnJvbS5cbiAgICovXG4gIGl0ZW1zOiBUW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBkaXNwbGF5IHRleHQgZm9yIGVhY2ggaXRlbVxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIGdldCB0aGUgZGlzcGxheSB0ZXh0IGZvci5cbiAgICogQHJldHVybnMgVGhlIGRpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW0uXG4gICAqL1xuICBpdGVtVGV4dEZ1bmM6IChpdGVtOiBUKSA9PiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbn1cblxuY2xhc3MgSXRlbVNlbGVjdE1vZGFsPFQ+IGV4dGVuZHMgRnV6enlTdWdnZXN0TW9kYWw8VD4ge1xuICBwcml2YXRlIGlzU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPiwgcHJpdmF0ZSByZXNvbHZlOiAoaXRlbTogbnVsbCB8IFQpID0+IHZvaWQpIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcihvcHRpb25zLnBsYWNlaG9sZGVyID8/ICcnKTtcbiAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKENzc0NsYXNzLkxpYnJhcnlOYW1lLCBnZXRQbHVnaW5JZCgpLCBDc3NDbGFzcy5TZWxlY3RJdGVtTW9kYWwpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldEl0ZW1zKCk6IFRbXSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pdGVtcztcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRJdGVtVGV4dChpdGVtOiBUKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLml0ZW1UZXh0RnVuYyhpdGVtKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNob29zZUl0ZW0oaXRlbTogVCk6IHZvaWQge1xuICAgIHRoaXMucmVzb2x2ZShpdGVtKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvbkNsb3NlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKSB7XG4gICAgICB0aGlzLnJlc29sdmUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHNlbGVjdFN1Z2dlc3Rpb24oXG4gICAgdmFsdWU6IEZ1enp5TWF0Y2g8VD4sXG4gICAgZXZ0OiBLZXlib2FyZEV2ZW50IHwgTW91c2VFdmVudFxuICApOiB2b2lkIHtcbiAgICB0aGlzLmlzU2VsZWN0ZWQgPSB0cnVlO1xuICAgIHN1cGVyLnNlbGVjdFN1Z2dlc3Rpb24odmFsdWUsIGV2dCk7XG4gIH1cbn1cblxuLyoqXG4gKiBEaXNwbGF5cyBhIHNlbGVjdGlvbiBtb2RhbCBpbiBPYnNpZGlhbiBmb3IgY2hvb3NpbmcgYW4gaXRlbSBmcm9tIGEgbGlzdC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgc2VsZWN0aW9uIG1vZGFsLlxuICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgc2VsZWN0ZWQgaXRlbSBvciBudWxsIGlmIG5vIGl0ZW0gd2FzIHNlbGVjdGVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VsZWN0SXRlbTxUPihvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPik6IFByb21pc2U8bnVsbCB8IFQ+IHtcbiAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPG51bGwgfCBUPigocmVzb2x2ZSkgPT4ge1xuICAgIGNvbnN0IG1vZGFsID0gbmV3IEl0ZW1TZWxlY3RNb2RhbDxUPihvcHRpb25zLCByZXNvbHZlKTtcbiAgICBtb2RhbC5vcGVuKCk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVNBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBRVAsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyxtQkFBbUI7QUE2QjVCLE1BQU0sd0JBQTJCLGtCQUFxQjtBQUFBLEVBRzdDLFlBQW9CLFNBQXVDLFNBQW1DO0FBQ25HLFVBQU0sUUFBUSxHQUFHO0FBRFE7QUFBdUM7QUFFaEUsU0FBSyxlQUFlLFFBQVEsZUFBZSxFQUFFO0FBQzdDLFNBQUssWUFBWSxTQUFTLFNBQVMsYUFBYSxZQUFZLEdBQUcsU0FBUyxlQUFlO0FBQUEsRUFDekY7QUFBQSxFQU5RLGFBQWE7QUFBQSxFQVFMLFdBQWdCO0FBQzlCLFdBQU8sS0FBSyxRQUFRO0FBQUEsRUFDdEI7QUFBQSxFQUVnQixZQUFZLE1BQWlCO0FBQzNDLFdBQU8sS0FBSyxRQUFRLGFBQWEsSUFBSTtBQUFBLEVBQ3ZDO0FBQUEsRUFFZ0IsYUFBYSxNQUFlO0FBQzFDLFNBQUssUUFBUSxJQUFJO0FBQUEsRUFDbkI7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixRQUFJLENBQUMsS0FBSyxZQUFZO0FBQ3BCLFdBQUssUUFBUSxJQUFJO0FBQUEsSUFDbkI7QUFBQSxFQUNGO0FBQUEsRUFFZ0IsaUJBQ2QsT0FDQSxLQUNNO0FBQ04sU0FBSyxhQUFhO0FBQ2xCLFVBQU0saUJBQWlCLE9BQU8sR0FBRztBQUFBLEVBQ25DO0FBQ0Y7QUFRQSxlQUFzQixXQUFjLFNBQWtEO0FBQ3BGLFNBQU8sTUFBTSxJQUFJLFFBQWtCLENBQUMsWUFBWTtBQUM5QyxVQUFNLFFBQVEsSUFBSSxnQkFBbUIsU0FBUyxPQUFPO0FBQ3JELFVBQU0sS0FBSztBQUFBLEVBQ2IsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
52
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL01vZGFscy9TZWxlY3RJdGVtLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvbiBzZWxlY3RJdGVtXG4gKiBVdGlsaXR5IGZvciBkaXNwbGF5aW5nIGEgc2VsZWN0aW9uIG1vZGFsIGluIE9ic2lkaWFuLlxuICpcbiAqIFRoaXMgbW9kdWxlIGV4cG9ydHMgYSBmdW5jdGlvbiB0byBkaXNwbGF5IGEgbW9kYWwgdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gc2VsZWN0IGFuIGl0ZW0gZnJvbSBhIGxpc3QuIFRoZSBtb2RhbCB1c2VzIGZ1enp5IHNlYXJjaCB0byBoZWxwIHRoZSB1c2VyIGZpbmQgdGhlIGl0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBGdXp6eU1hdGNoIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBBcHAsXG4gIEZ1enp5U3VnZ2VzdE1vZGFsXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBQcm9taXNlUmVzb2x2ZSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5JZCB9IGZyb20gJy4uL1BsdWdpbi9QbHVnaW5JZC50cyc7XG5pbXBvcnQgeyBzaG93TW9kYWwgfSBmcm9tICcuL01vZGFsQmFzZS50cyc7XG5cbi8qKlxuICogVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBzZWxlY3Rpb24gbW9kYWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0SXRlbU9wdGlvbnM8VD4ge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgQ1NTIGNsYXNzIHRvIGFwcGx5IHRvIHRoZSBtb2RhbC5cbiAgICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBpdGVtcyB0byBjaG9vc2UgZnJvbS5cbiAgICovXG4gIGl0ZW1zOiBUW107XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gZ2V0IHRoZSBkaXNwbGF5IHRleHQgZm9yIGVhY2ggaXRlbVxuICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIGdldCB0aGUgZGlzcGxheSB0ZXh0IGZvci5cbiAgICogQHJldHVybnMgVGhlIGRpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW0uXG4gICAqL1xuICBpdGVtVGV4dEZ1bmM6IChpdGVtOiBUKSA9PiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXQgZmllbGQuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbn1cblxuY2xhc3MgSXRlbVNlbGVjdE1vZGFsPFQ+IGV4dGVuZHMgRnV6enlTdWdnZXN0TW9kYWw8VD4ge1xuICBwcml2YXRlIGlzU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBvcHRpb25zOiBTZWxlY3RJdGVtT3B0aW9uczxUPiwgcHJpdmF0ZSByZXNvbHZlOiBQcm9taXNlUmVzb2x2ZTxudWxsIHwgVD4pIHtcbiAgICBzdXBlcihvcHRpb25zLmFwcCk7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcihvcHRpb25zLnBsYWNlaG9sZGVyID8/ICcnKTtcbiAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKENzc0NsYXNzLkxpYnJhcnlOYW1lLCBnZXRQbHVnaW5JZCgpLCBDc3NDbGFzcy5TZWxlY3RJdGVtTW9kYWwpO1xuICAgIGlmIChvcHRpb25zLmNzc0NsYXNzKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lckVsLmFkZENsYXNzKG9wdGlvbnMuY3NzQ2xhc3MpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRJdGVtcygpOiBUW10ge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuaXRlbXM7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0SXRlbVRleHQoaXRlbTogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pdGVtVGV4dEZ1bmMoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DaG9vc2VJdGVtKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLnJlc29sdmUoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25DbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNTZWxlY3RlZCkge1xuICAgICAgdGhpcy5yZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBzZWxlY3RTdWdnZXN0aW9uKFxuICAgIHZhbHVlOiBGdXp6eU1hdGNoPFQ+LFxuICAgIGV2dDogS2V5Ym9hcmRFdmVudCB8IE1vdXNlRXZlbnRcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgICBzdXBlci5zZWxlY3RTdWdnZXN0aW9uKHZhbHVlLCBldnQpO1xuICB9XG59XG5cbi8qKlxuICogRGlzcGxheXMgYSBzZWxlY3Rpb24gbW9kYWwgaW4gT2JzaWRpYW4gZm9yIGNob29zaW5nIGFuIGl0ZW0gZnJvbSBhIGxpc3QuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIHNlbGVjdGlvbiBtb2RhbC5cbiAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHNlbGVjdGVkIGl0ZW0gb3IgbnVsbCBpZiBubyBpdGVtIHdhcyBzZWxlY3RlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNlbGVjdEl0ZW08VD4ob3B0aW9uczogU2VsZWN0SXRlbU9wdGlvbnM8VD4pOiBQcm9taXNlPG51bGwgfCBUPiB7XG4gIHJldHVybiBhd2FpdCBzaG93TW9kYWw8bnVsbCB8IFQ+KChyZXNvbHZlKSA9PiBuZXcgSXRlbVNlbGVjdE1vZGFsKG9wdGlvbnMsIHJlc29sdmUpKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFTQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUlQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsbUJBQW1CO0FBQzVCLFNBQVMsaUJBQWlCO0FBa0MxQixNQUFNLHdCQUEyQixrQkFBcUI7QUFBQSxFQUc3QyxZQUFvQixTQUF1QyxTQUFtQztBQUNuRyxVQUFNLFFBQVEsR0FBRztBQURRO0FBQXVDO0FBRWhFLFNBQUssZUFBZSxRQUFRLGVBQWUsRUFBRTtBQUM3QyxTQUFLLFlBQVksU0FBUyxTQUFTLGFBQWEsWUFBWSxHQUFHLFNBQVMsZUFBZTtBQUN2RixRQUFJLFFBQVEsVUFBVTtBQUNwQixXQUFLLFlBQVksU0FBUyxRQUFRLFFBQVE7QUFBQSxJQUM1QztBQUFBLEVBQ0Y7QUFBQSxFQVRRLGFBQWE7QUFBQSxFQVdMLFdBQWdCO0FBQzlCLFdBQU8sS0FBSyxRQUFRO0FBQUEsRUFDdEI7QUFBQSxFQUVnQixZQUFZLE1BQWlCO0FBQzNDLFdBQU8sS0FBSyxRQUFRLGFBQWEsSUFBSTtBQUFBLEVBQ3ZDO0FBQUEsRUFFZ0IsYUFBYSxNQUFlO0FBQzFDLFNBQUssUUFBUSxJQUFJO0FBQUEsRUFDbkI7QUFBQSxFQUVnQixVQUFnQjtBQUM5QixRQUFJLENBQUMsS0FBSyxZQUFZO0FBQ3BCLFdBQUssUUFBUSxJQUFJO0FBQUEsSUFDbkI7QUFBQSxFQUNGO0FBQUEsRUFFZ0IsaUJBQ2QsT0FDQSxLQUNNO0FBQ04sU0FBSyxhQUFhO0FBQ2xCLFVBQU0saUJBQWlCLE9BQU8sR0FBRztBQUFBLEVBQ25DO0FBQ0Y7QUFRQSxlQUFzQixXQUFjLFNBQWtEO0FBQ3BGLFNBQU8sTUFBTSxVQUFvQixDQUFDLFlBQVksSUFBSSxnQkFBZ0IsU0FBUyxPQUFPLENBQUM7QUFDckY7IiwKICAibmFtZXMiOiBbXQp9Cg==
package/dist/styles.css CHANGED
@@ -1,12 +1,23 @@
1
1
  .obsidian-dev-utils :invalid {
2
2
  box-shadow: 0 0 0 2px var(--text-error);
3
3
  }
4
- .obsidian-dev-utils .multiple-dropdown-component select, .obsidian-dev-utils .multiple-dropdown-component select:focus, .obsidian-dev-utils .multiple-dropdown-component .dropdown {
4
+ .obsidian-dev-utils.modal-container .ok-button {
5
+ margin-right: 10px;
6
+ margin-top: 20px;
7
+ }
8
+ .obsidian-dev-utils .multiple-dropdown-component select,
9
+ .obsidian-dev-utils .multiple-dropdown-component select:focus,
10
+ .obsidian-dev-utils .multiple-dropdown-component .dropdown {
5
11
  height: auto;
6
12
  }
7
- .obsidian-dev-utils .multiple-dropdown-component select option:checked, .obsidian-dev-utils .multiple-dropdown-component select:focus option:checked, .obsidian-dev-utils .multiple-dropdown-component .dropdown option:checked {
13
+ .obsidian-dev-utils .multiple-dropdown-component select option:checked,
14
+ .obsidian-dev-utils .multiple-dropdown-component select:focus option:checked,
15
+ .obsidian-dev-utils .multiple-dropdown-component .dropdown option:checked {
8
16
  background-color: #1967d2;
9
17
  color: #fff;
10
18
  }
19
+ .obsidian-dev-utils .prompt-modal .text-box {
20
+ width: 100%;
21
+ }
11
22
 
12
- /*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../src/styles/main.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AACE;EACE;;AAIA;EACE;;AAEA;EACE;EACA%22,%22file%22:%22styles.css%22,%22sourcesContent%22:%5B%22.obsidian-dev-utils%20%7B%5Cn%20%20:invalid%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%202px%20var(--text-error);%5Cn%20%20%7D%5Cn%5Cn%20%20.multiple-dropdown-component%20%7B%5Cn%20%20%20%20select,%20select:focus,%20.dropdown%20%7B%5Cn%20%20%20%20%20%20height:%20auto;%5Cn%5Cn%20%20%20%20%20%20option:checked%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20%231967d2;%5Cn%20%20%20%20%20%20%20%20color:%20%23fff;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22%5D%7D */
23
+ /*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../src/styles/main.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AACE;EACE;;AAIA;EACE;EACA;;AAKF;AAAA;AAAA;EAGE;;AAEA;AAAA;AAAA;EACE;EACA;;AAMJ;EACE%22,%22file%22:%22styles.css%22,%22sourcesContent%22:%5B%22.obsidian-dev-utils%20%7B%5Cn%20%20:invalid%20%7B%5Cn%20%20%20%20box-shadow:%200%200%200%202px%20var(--text-error);%5Cn%20%20%7D%5Cn%5Cn%20%20&.modal-container%20%7B%5Cn%20%20%20%20.ok-button%20%7B%5Cn%20%20%20%20%20%20margin-right:%2010px;%5Cn%20%20%20%20%20%20margin-top:%2020px;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20.multiple-dropdown-component%20%7B%5Cn%20%20%20%20select,%5Cn%20%20%20%20select:focus,%5Cn%20%20%20%20.dropdown%20%7B%5Cn%20%20%20%20%20%20height:%20auto;%5Cn%5Cn%20%20%20%20%20%20option:checked%20%7B%5Cn%20%20%20%20%20%20%20%20background-color:%20%231967d2;%5Cn%20%20%20%20%20%20%20%20color:%20%23fff;%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%5Cn%20%20.prompt-modal%20%7B%5Cn%20%20%20%20.text-box%20%7B%5Cn%20%20%20%20%20%20width:%20100%25;%5Cn%20%20%20%20%7D%5Cn%20%20%7D%5Cn%7D%5Cn%22%5D%7D */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "obsidian-dev-utils",
3
- "version": "18.0.5",
3
+ "version": "18.2.0",
4
4
  "description": "This is the collection of useful functions that you can use for your Obsidian plugin development",
5
5
  "keywords": [
6
6
  "obsidian"
@@ -511,7 +511,7 @@
511
511
  "svelte-check": "^4.1.4",
512
512
  "svelte-preprocess": "^6.0.3",
513
513
  "tsx": "^4.19.2",
514
- "type-fest": "^4.33.0",
514
+ "type-fest": "^4.34.1",
515
515
  "typescript": "^5.7.3",
516
516
  "typescript-eslint": "^8.23.0"
517
517
  }