obsidian-dev-utils 94.0.0 → 94.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.
@@ -12972,6 +12972,7 @@ __export(obsidian_exports, {
12972
12972
  "file-change": () => file_change_exports,
12973
12973
  "file-manager": () => file_manager_exports,
12974
12974
  "file-system": () => file_system_exports,
12975
+ "folder-note": () => folder_note_exports,
12975
12976
  frontmatter: () => frontmatter_exports,
12976
12977
  "frontmatter-link-cache-with-offsets": () => frontmatter_link_cache_with_offsets_exports,
12977
12978
  "hover-link-source-registrar": () => hover_link_source_registrar_exports,
@@ -13173,7 +13174,7 @@ __export(attachment_path_exports, {
13173
13174
  isAtProperAttachmentPath: () => isAtProperAttachmentPath
13174
13175
  });
13175
13176
 
13176
- // node_modules/@obsidian-typings/obsidian-public-1.13.6/dist/esm/implementations.mjs
13177
+ // node_modules/@obsidian-typings/obsidian-public-1.13.7/dist/esm/implementations.mjs
13177
13178
  var import_obsidian2 = require("obsidian");
13178
13179
  var import_obsidian3 = require("obsidian");
13179
13180
  var import_obsidian4 = require("obsidian");
@@ -26650,11 +26651,15 @@ function toParsedCachedMetadataEx(params) {
26650
26651
  var obsidian_settings_exports = {};
26651
26652
  __export(obsidian_settings_exports, {
26652
26653
  getNewLinkFormat: () => getNewLinkFormat,
26654
+ isSpellcheckEnabled: () => isSpellcheckEnabled,
26653
26655
  shouldUseWikilinks: () => shouldUseWikilinks
26654
26656
  });
26655
26657
  function getNewLinkFormat(app) {
26656
26658
  return app.vault.getConfig("newLinkFormat");
26657
26659
  }
26660
+ function isSpellcheckEnabled(app) {
26661
+ return Boolean(app.vault.getConfig("spellcheck"));
26662
+ }
26658
26663
  function shouldUseWikilinks(app) {
26659
26664
  return !app.vault.getConfig("useMarkdownLinks");
26660
26665
  }
@@ -33405,12 +33410,136 @@ var PluginExtensionsRegistrar = class {
33405
33410
  }
33406
33411
  };
33407
33412
 
33413
+ // src/obsidian/folder-note.ts
33414
+ var folder_note_exports = {};
33415
+ __export(folder_note_exports, {
33416
+ FOLDER_NOTES_PLUGIN_ID: () => FOLDER_NOTES_PLUGIN_ID2,
33417
+ FolderNoteLocation: () => FolderNoteLocation,
33418
+ resolveFolderNote: () => resolveFolderNote,
33419
+ resolveFolderNoteConfig: () => resolveFolderNoteConfig
33420
+ });
33421
+ var import_obsidian125 = require("obsidian");
33422
+ init_path();
33423
+ init_string();
33424
+ var FolderNoteLocation = /* @__PURE__ */ ((FolderNoteLocation2) => {
33425
+ FolderNoteLocation2["Auto"] = "Auto";
33426
+ FolderNoteLocation2["InsideFolder"] = "InsideFolder";
33427
+ FolderNoteLocation2["None"] = "None";
33428
+ FolderNoteLocation2["ParentFolder"] = "ParentFolder";
33429
+ return FolderNoteLocation2;
33430
+ })(FolderNoteLocation || {});
33431
+ var FOLDER_NOTES_PLUGIN_ID2 = "folder-notes";
33432
+ var FOLDER_NOTES_FOLDER_NAME_TOKEN_REG_EXP = /\{\{folder_name\}\}/gi;
33433
+ var EXCALIDRAW_FILE_EXTENSION = "excalidraw";
33434
+ var FALLBACK_FOLDER_NOTE_CONFIG = {
33435
+ extensions: [MARKDOWN_FILE_EXTENSION],
33436
+ isHidden: false,
33437
+ location: "InsideFolder" /* InsideFolder */,
33438
+ resolveName: (folder) => folder.name
33439
+ };
33440
+ function resolveFolderNote(params) {
33441
+ const { app, folder } = params;
33442
+ const config = params.config ?? resolveFolderNoteConfig({ app });
33443
+ if (config.location === "None" /* None */) {
33444
+ return null;
33445
+ }
33446
+ const parentFolderPath2 = config.location === "ParentFolder" /* ParentFolder */ ? folder.parent?.path : folder.path;
33447
+ if (parentFolderPath2 === void 0) {
33448
+ return null;
33449
+ }
33450
+ const noteName = config.resolveName(folder).trim();
33451
+ if (!noteName) {
33452
+ return null;
33453
+ }
33454
+ for (const extension2 of config.extensions) {
33455
+ const file = app.vault.getFileByPath((0, import_obsidian125.normalizePath)(join(parentFolderPath2, `${noteName}.${extension2}`)));
33456
+ if (file) {
33457
+ return file;
33458
+ }
33459
+ }
33460
+ return null;
33461
+ }
33462
+ function resolveFolderNoteConfig(params) {
33463
+ const {
33464
+ app,
33465
+ extensions,
33466
+ isHidden,
33467
+ location,
33468
+ resolveName
33469
+ } = params;
33470
+ if (location !== void 0 && location !== "Auto" /* Auto */) {
33471
+ return {
33472
+ extensions: normalizeExtensions(extensions ?? [MARKDOWN_FILE_EXTENSION]),
33473
+ isHidden: isHidden ?? false,
33474
+ location,
33475
+ resolveName: resolveName ?? FALLBACK_FOLDER_NOTE_CONFIG.resolveName
33476
+ };
33477
+ }
33478
+ return readFolderNotesPluginConfig(app) ?? FALLBACK_FOLDER_NOTE_CONFIG;
33479
+ }
33480
+ function normalizeExtensions(extensions) {
33481
+ const normalizedExtensions = extensions.map((extension2) => extension2.trim().toLowerCase().replace(/^\./, "")).map((extension2) => extension2 === EXCALIDRAW_FILE_EXTENSION ? MARKDOWN_FILE_EXTENSION : extension2).filter(Boolean);
33482
+ return [...new Set(normalizedExtensions)];
33483
+ }
33484
+ function readFolderNotesPluginConfig(app) {
33485
+ const folderNotesPlugin = app.plugins.getPlugin(FOLDER_NOTES_PLUGIN_ID2);
33486
+ if (!folderNotesPlugin || !("settings" in folderNotesPlugin)) {
33487
+ return null;
33488
+ }
33489
+ const folderNotesSettings = folderNotesPlugin.settings;
33490
+ if (typeof folderNotesSettings !== "object" || folderNotesSettings === null) {
33491
+ return null;
33492
+ }
33493
+ const location = toFolderNoteLocation("storageLocation" in folderNotesSettings ? folderNotesSettings.storageLocation : null);
33494
+ if (!location) {
33495
+ return null;
33496
+ }
33497
+ const folderNoteName = "folderNoteName" in folderNotesSettings ? folderNotesSettings.folderNoteName : null;
33498
+ if (typeof folderNoteName !== "string" || !folderNoteName) {
33499
+ return null;
33500
+ }
33501
+ const folderNoteType = "folderNoteType" in folderNotesSettings ? folderNotesSettings.folderNoteType : null;
33502
+ const supportedFileTypes = "supportedFileTypes" in folderNotesSettings ? folderNotesSettings.supportedFileTypes : null;
33503
+ const isHidden = "hideFolderNote" in folderNotesSettings ? folderNotesSettings.hideFolderNote : null;
33504
+ return {
33505
+ // Its own resolver tries the primary type first and every other supported type after it, which is the
33506
+ // Order reproduced here. An unusable pair leaves Markdown, the extension it cannot be configured
33507
+ // Without.
33508
+ extensions: normalizeExtensions([
33509
+ typeof folderNoteType === "string" ? folderNoteType : MARKDOWN_FILE_EXTENSION,
33510
+ ...Array.isArray(supportedFileTypes) ? supportedFileTypes.filter((type) => typeof type === "string") : [],
33511
+ MARKDOWN_FILE_EXTENSION
33512
+ ]),
33513
+ isHidden: isHidden === true,
33514
+ location,
33515
+ resolveName: (folder) => replaceAll({
33516
+ $string: folderNoteName,
33517
+ // A function replacer, so a folder name containing `$&` is inserted literally.
33518
+ replacer: () => folder.name,
33519
+ searchValue: FOLDER_NOTES_FOLDER_NAME_TOKEN_REG_EXP
33520
+ })
33521
+ };
33522
+ }
33523
+ function toFolderNoteLocation(storageLocation) {
33524
+ switch (storageLocation) {
33525
+ case "insideFolder": {
33526
+ return "InsideFolder" /* InsideFolder */;
33527
+ }
33528
+ case "parentFolder": {
33529
+ return "ParentFolder" /* ParentFolder */;
33530
+ }
33531
+ default: {
33532
+ return null;
33533
+ }
33534
+ }
33535
+ }
33536
+
33408
33537
  // src/obsidian/hover-link-source-registrar.ts
33409
33538
  var hover_link_source_registrar_exports = {};
33410
33539
  __export(hover_link_source_registrar_exports, {
33411
33540
  PluginHoverLinkSourceRegistrar: () => PluginHoverLinkSourceRegistrar
33412
33541
  });
33413
- var import_obsidian125 = require("obsidian");
33542
+ var import_obsidian126 = require("obsidian");
33414
33543
  var PluginHoverLinkSourceRegistrar = class {
33415
33544
  /**
33416
33545
  * Creates a new instance of the {@link PluginHoverLinkSourceRegistrar} class.
@@ -33485,7 +33614,7 @@ var loop_exports = {};
33485
33614
  __export(loop_exports, {
33486
33615
  loop: () => loop
33487
33616
  });
33488
- var import_obsidian126 = require("obsidian");
33617
+ var import_obsidian127 = require("obsidian");
33489
33618
  init_abort_controller();
33490
33619
  init_async();
33491
33620
  init_debug();
@@ -33908,7 +34037,7 @@ var markdown_post_processor_registrar_exports = {};
33908
34037
  __export(markdown_post_processor_registrar_exports, {
33909
34038
  PluginMarkdownPostProcessorRegistrar: () => PluginMarkdownPostProcessorRegistrar
33910
34039
  });
33911
- var import_obsidian127 = require("obsidian");
34040
+ var import_obsidian128 = require("obsidian");
33912
34041
  init_async();
33913
34042
  var PluginMarkdownPostProcessorRegistrar = class {
33914
34043
  /**
@@ -33954,10 +34083,11 @@ __export(markdown_exports, {
33954
34083
  renderExternalLink: () => renderExternalLink,
33955
34084
  renderInternalLink: () => renderInternalLink
33956
34085
  });
33957
- var import_obsidian128 = require("obsidian");
34086
+ var import_obsidian129 = require("obsidian");
33958
34087
  init_async();
33959
34088
  init_object_utils();
33960
34089
  init_monkey_around_component();
34090
+ var DELAY_BEFORE_OPEN_IN_MILLISECONDS = 200;
33961
34091
  var moduleState4 = {
33962
34092
  domEventsHandlersConstructor: null
33963
34093
  };
@@ -34020,12 +34150,12 @@ async function fullRender(params) {
34020
34150
  if (params.component) {
34021
34151
  component = params.component;
34022
34152
  } else {
34023
- component = new import_obsidian128.Component();
34153
+ component = new import_obsidian129.Component();
34024
34154
  component.load();
34025
34155
  shouldUnloadComponent = true;
34026
34156
  }
34027
34157
  const _ = __using(_stack, component.addChild(new EmbedByExtensionMdPatchComponent(params.app.embedRegistry.embedByExtension)));
34028
- await import_obsidian128.MarkdownRenderer.render(params.app, params.markdown, params.el, sourcePath, component);
34158
+ await import_obsidian129.MarkdownRenderer.render(params.app, params.markdown, params.el, sourcePath, component);
34029
34159
  if (shouldUnloadComponent) {
34030
34160
  component.unload();
34031
34161
  }
@@ -34048,10 +34178,10 @@ async function markdownToHtml(params) {
34048
34178
  markdown,
34049
34179
  sourcePath
34050
34180
  } = params;
34051
- const component = new import_obsidian128.Component();
34181
+ const component = new import_obsidian129.Component();
34052
34182
  component.load();
34053
34183
  const renderDiv = createDiv();
34054
- await import_obsidian128.MarkdownRenderer.render(app, markdown, renderDiv, sourcePath ?? "", component);
34184
+ await import_obsidian129.MarkdownRenderer.render(app, markdown, renderDiv, sourcePath ?? "", component);
34055
34185
  const html2 = renderDiv.innerHTML;
34056
34186
  component.unload();
34057
34187
  return html2;
@@ -34063,7 +34193,7 @@ async function registerLinkHandlers(params) {
34063
34193
  sourcePath
34064
34194
  } = params;
34065
34195
  moduleState4.domEventsHandlersConstructor ??= await getDomEventsHandlersConstructor(app);
34066
- import_obsidian128.MarkdownPreviewRenderer.registerDomEvents(
34196
+ import_obsidian129.MarkdownPreviewRenderer.registerDomEvents(
34067
34197
  el,
34068
34198
  new moduleState4.domEventsHandlersConstructor(
34069
34199
  new FixedZIndexDomEventsHandlersInfo({
@@ -34096,7 +34226,9 @@ async function renderExternalLink(params) {
34096
34226
  async function renderInternalLink(params) {
34097
34227
  const {
34098
34228
  app,
34099
- pathOrAbstractFile
34229
+ folderNote,
34230
+ pathOrAbstractFile,
34231
+ shouldRevealFile
34100
34232
  } = params;
34101
34233
  const abstractFile = getAbstractFileOrNull({ app, pathOrFile: pathOrAbstractFile });
34102
34234
  const path = getPath2(app, pathOrAbstractFile);
@@ -34105,7 +34237,12 @@ async function renderInternalLink(params) {
34105
34237
  return createEl("a", { text: displayText }, (aEl2) => {
34106
34238
  aEl2.addEventListener("click", ($event) => {
34107
34239
  $event.preventDefault();
34108
- app.internalPlugins.getEnabledPluginById(InternalPluginName.FileExplorer)?.revealInFolder(abstractFile);
34240
+ const config = resolveFolderNoteConfig({ app, ...folderNote });
34241
+ const folderNoteFile = resolveFolderNote({ app, config, folder: abstractFile });
34242
+ revealInFileExplorer(app, folderNoteFile && !config.isHidden ? folderNoteFile : abstractFile);
34243
+ if (folderNoteFile) {
34244
+ invokeAsyncSafely(() => openAfterSettling(app, folderNoteFile));
34245
+ }
34109
34246
  });
34110
34247
  });
34111
34248
  }
@@ -34120,8 +34257,23 @@ async function renderInternalLink(params) {
34120
34257
  app,
34121
34258
  el: aEl
34122
34259
  });
34260
+ if (shouldRevealFile ?? false) {
34261
+ aEl.addEventListener("click", () => {
34262
+ const file = getAbstractFileOrNull({ app, pathOrFile: pathOrAbstractFile });
34263
+ if (isFile(file)) {
34264
+ revealInFileExplorer(app, file);
34265
+ }
34266
+ });
34267
+ }
34123
34268
  return aEl;
34124
34269
  }
34270
+ async function openAfterSettling(app, file) {
34271
+ await sleep2({ milliseconds: DELAY_BEFORE_OPEN_IN_MILLISECONDS });
34272
+ await app.workspace.getLeaf().openFile(file, { active: true });
34273
+ }
34274
+ function revealInFileExplorer(app, abstractFile) {
34275
+ app.internalPlugins.getEnabledPluginById(InternalPluginName.FileExplorer)?.revealInFolder(abstractFile);
34276
+ }
34125
34277
 
34126
34278
  // src/obsidian/menu-event-registrar.ts
34127
34279
  var menu_event_registrar_exports = {};
@@ -34145,7 +34297,7 @@ __export(alert_exports, {
34145
34297
  alert: () => alert
34146
34298
  });
34147
34299
  init_i18next();
34148
- var import_obsidian129 = require("obsidian");
34300
+ var import_obsidian130 = require("obsidian");
34149
34301
  init_css_class();
34150
34302
  init_modal();
34151
34303
  var AlertModal = class extends ModalBase {
@@ -34165,7 +34317,7 @@ var AlertModal = class extends ModalBase {
34165
34317
  onOpen() {
34166
34318
  this.titleEl.setText(this.title);
34167
34319
  this.contentEl.createEl("p", { text: this.message });
34168
- const okButton = new import_obsidian129.ButtonComponent(this.contentEl);
34320
+ const okButton = new import_obsidian130.ButtonComponent(this.contentEl);
34169
34321
  okButton.setButtonText(this.okButtonText);
34170
34322
  okButton.setCta();
34171
34323
  okButton.onClick(this.close.bind(this));
@@ -34186,7 +34338,7 @@ var minimizable_modal_exports = {};
34186
34338
  __export(minimizable_modal_exports, {
34187
34339
  MinimizableModal: () => MinimizableModal
34188
34340
  });
34189
- var import_obsidian130 = require("obsidian");
34341
+ var import_obsidian131 = require("obsidian");
34190
34342
  init_monkey_around_component();
34191
34343
  init_css_class();
34192
34344
  init_plugin_context();
@@ -34228,7 +34380,7 @@ var PeekLockComponent = class extends MonkeyAroundComponent {
34228
34380
  onload() {
34229
34381
  super.onload();
34230
34382
  this.registerMethodPatch({
34231
- $object: import_obsidian130.Modal.prototype,
34383
+ $object: import_obsidian131.Modal.prototype,
34232
34384
  methodName: "open",
34233
34385
  patchHandler: ({ fallback, originalThis }) => {
34234
34386
  blockOrFallback(originalThis, fallback);
@@ -34338,7 +34490,7 @@ var MinimizableModal = class {
34338
34490
  }
34339
34491
  createMinimizeButton() {
34340
34492
  const buttonEl = this.modal.modalEl.createEl("button", { cls: "minimize-button" /* MinimizeButton */ });
34341
- (0, import_obsidian130.setIcon)(buttonEl, MINIMIZE_ICON_ID);
34493
+ (0, import_obsidian131.setIcon)(buttonEl, MINIMIZE_ICON_ID);
34342
34494
  buttonEl.addEventListener("click", () => {
34343
34495
  this.minimize();
34344
34496
  });
@@ -34352,11 +34504,11 @@ var MinimizableModal = class {
34352
34504
  text: this.modal.titleEl.textContent
34353
34505
  });
34354
34506
  const restoreButtonEl = barEl.createEl("button", { cls: "restore-button" /* RestoreButton */ });
34355
- (0, import_obsidian130.setIcon)(restoreButtonEl, RESTORE_ICON_ID);
34507
+ (0, import_obsidian131.setIcon)(restoreButtonEl, RESTORE_ICON_ID);
34356
34508
  if (this.shouldShowCancelButton) {
34357
34509
  const cancelButtonEl = barEl.createEl("button", { cls: "cancel-button" /* CancelButton */ });
34358
- (0, import_obsidian130.setIcon)(cancelButtonEl, CANCEL_ICON_ID);
34359
- (0, import_obsidian130.setTooltip)(cancelButtonEl, "Cancel");
34510
+ (0, import_obsidian131.setIcon)(cancelButtonEl, CANCEL_ICON_ID);
34511
+ (0, import_obsidian131.setTooltip)(cancelButtonEl, "Cancel");
34360
34512
  cancelButtonEl.addEventListener("click", ($event) => {
34361
34513
  $event.stopPropagation();
34362
34514
  this.modal.close();
@@ -34497,7 +34649,7 @@ var prompt_exports = {};
34497
34649
  __export(prompt_exports, {
34498
34650
  prompt: () => prompt
34499
34651
  });
34500
- var import_obsidian131 = require("obsidian");
34652
+ var import_obsidian132 = require("obsidian");
34501
34653
  init_async();
34502
34654
  init_function();
34503
34655
  init_css_class();
@@ -34527,8 +34679,9 @@ var PromptModal = class extends ModalBase {
34527
34679
  }
34528
34680
  onOpen() {
34529
34681
  this.titleEl.setText(this.title);
34530
- const textComponent = new import_obsidian131.TextComponent(this.contentEl);
34682
+ const textComponent = new import_obsidian132.TextComponent(this.contentEl);
34531
34683
  const inputEl = textComponent.inputEl;
34684
+ inputEl.setAttribute("spellcheck", String(isSpellcheckEnabled(this.app)));
34532
34685
  const validate = async (shouldReport) => {
34533
34686
  const errorMessage = await this.valueValidator(inputEl.value);
34534
34687
  inputEl.setCustomValidity(errorMessage ?? "");
@@ -34561,14 +34714,14 @@ var PromptModal = class extends ModalBase {
34561
34714
  inputEl.addEventListener("input", convertAsyncToSync(handleInput));
34562
34715
  inputEl.addEventListener("focus", convertAsyncToSync(handleFocus));
34563
34716
  invokeAsyncSafely(() => validate(false));
34564
- const okButton = new import_obsidian131.ButtonComponent(this.contentEl);
34717
+ const okButton = new import_obsidian132.ButtonComponent(this.contentEl);
34565
34718
  okButton.setButtonText(this.okButtonText);
34566
34719
  okButton.setCta();
34567
34720
  okButton.onClick((event) => {
34568
34721
  this.handleOk(event, textComponent);
34569
34722
  });
34570
34723
  okButton.setClass("ok-button" /* OkButton */);
34571
- const cancelButton = new import_obsidian131.ButtonComponent(this.contentEl);
34724
+ const cancelButton = new import_obsidian132.ButtonComponent(this.contentEl);
34572
34725
  cancelButton.setButtonText(this.cancelButtonText);
34573
34726
  cancelButton.onClick(this.close.bind(this));
34574
34727
  cancelButton.setClass("cancel-button" /* CancelButton */);
@@ -34602,11 +34755,11 @@ var select_item_exports = {};
34602
34755
  __export(select_item_exports, {
34603
34756
  selectItem: () => selectItem
34604
34757
  });
34605
- var import_obsidian132 = require("obsidian");
34758
+ var import_obsidian133 = require("obsidian");
34606
34759
  init_css_class();
34607
34760
  init_plugin_context();
34608
34761
  init_modal();
34609
- var ItemSelectModal = class extends import_obsidian132.FuzzySuggestModal {
34762
+ var ItemSelectModal = class extends import_obsidian133.FuzzySuggestModal {
34610
34763
  isSelected = false;
34611
34764
  items;
34612
34765
  itemTextFunction;
@@ -34658,7 +34811,7 @@ var suggest_modal_command_builder_exports = {};
34658
34811
  __export(suggest_modal_command_builder_exports, {
34659
34812
  SuggestModalCommandBuilder: () => SuggestModalCommandBuilder
34660
34813
  });
34661
- var import_obsidian133 = require("obsidian");
34814
+ var import_obsidian134 = require("obsidian");
34662
34815
  var KEYS_MAP = /* @__PURE__ */ new Map([
34663
34816
  ["Enter", "\u21B5"],
34664
34817
  ["UpDown", "\u2191\u2193"]
@@ -34705,7 +34858,7 @@ var SuggestModalCommandBuilder = class {
34705
34858
  command: this.buildCommand(command),
34706
34859
  init: (purposeEl, scope) => {
34707
34860
  purposeEl.appendText(" ");
34708
- const dropdownComponent = new import_obsidian133.DropdownComponent(purposeEl);
34861
+ const dropdownComponent = new import_obsidian134.DropdownComponent(purposeEl);
34709
34862
  command.onInit(dropdownComponent);
34710
34863
  dropdownComponent.onChange((value) => {
34711
34864
  command.onChange(value);
@@ -34780,10 +34933,10 @@ var SuggestModalCommandBuilder = class {
34780
34933
  return "ctrl";
34781
34934
  }
34782
34935
  case "Meta": {
34783
- return import_obsidian133.Platform.isMacOS ? "cmd" : "win";
34936
+ return import_obsidian134.Platform.isMacOS ? "cmd" : "win";
34784
34937
  }
34785
34938
  case "Mod": {
34786
- return import_obsidian133.Platform.isMacOS ? "cmd" : "ctrl";
34939
+ return import_obsidian134.Platform.isMacOS ? "cmd" : "ctrl";
34787
34940
  }
34788
34941
  case "Shift": {
34789
34942
  return "shift";
@@ -34961,10 +35114,10 @@ var pdf_exports = {};
34961
35114
  __export(pdf_exports, {
34962
35115
  printToPdf: () => printToPdf
34963
35116
  });
34964
- var import_obsidian134 = require("obsidian");
35117
+ var import_obsidian135 = require("obsidian");
34965
35118
  var ELECTRON_PRINT_TO_PDF_CHANNEL = "print-to-pdf";
34966
35119
  async function printToPdf(element, options) {
34967
- if (import_obsidian134.Platform.isMobile) {
35120
+ if (import_obsidian135.Platform.isMobile) {
34968
35121
  throw new Error("Printing to PDF is not supported on mobile devices.");
34969
35122
  }
34970
35123
  const printDiv = activeDocument.body.createDiv("print");
@@ -35163,7 +35316,7 @@ __export(plugin_settings_tab_exports, {
35163
35316
  PluginSettingsTabBase: () => PluginSettingsTabBase,
35164
35317
  SAVE_TO_FILE_CONTEXT: () => SAVE_TO_FILE_CONTEXT
35165
35318
  });
35166
- var import_obsidian152 = require("obsidian");
35319
+ var import_obsidian153 = require("obsidian");
35167
35320
  init_async_events();
35168
35321
  init_async();
35169
35322
  init_function();
@@ -35201,7 +35354,7 @@ var text_based_component_exports = {};
35201
35354
  __export(text_based_component_exports, {
35202
35355
  getTextBasedComponentValue: () => getTextBasedComponentValue
35203
35356
  });
35204
- var import_obsidian135 = require("obsidian");
35357
+ var import_obsidian136 = require("obsidian");
35205
35358
  var AbstractTextComponentWrapper = class {
35206
35359
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- `unknown` doesn't work, getting compiler errors.
35207
35360
  constructor(abstractTextComponent) {
@@ -35223,7 +35376,7 @@ function getTextBasedComponentValue($unknown) {
35223
35376
  if (isTextBasedComponent($unknown)) {
35224
35377
  return $unknown;
35225
35378
  }
35226
- if ($unknown instanceof import_obsidian135.AbstractTextComponent) {
35379
+ if ($unknown instanceof import_obsidian136.AbstractTextComponent) {
35227
35380
  return new AbstractTextComponentWrapper($unknown);
35228
35381
  }
35229
35382
  return null;
@@ -35238,7 +35391,7 @@ var validator_component_exports = {};
35238
35391
  __export(validator_component_exports, {
35239
35392
  getValidatorComponent: () => getValidatorComponent
35240
35393
  });
35241
- var import_obsidian136 = require("obsidian");
35394
+ var import_obsidian137 = require("obsidian");
35242
35395
  init_css_class();
35243
35396
  init_plugin_context();
35244
35397
  var OverlayValidatorComponent = class {
@@ -35299,28 +35452,28 @@ function getValidatorComponent($unknown) {
35299
35452
  if (isValidatorComponent($unknown)) {
35300
35453
  return $unknown;
35301
35454
  }
35302
- if ($unknown instanceof import_obsidian136.ColorComponent) {
35455
+ if ($unknown instanceof import_obsidian137.ColorComponent) {
35303
35456
  return new ValidatorElementWrapper($unknown.colorPickerEl);
35304
35457
  }
35305
- if ($unknown instanceof import_obsidian136.DropdownComponent) {
35458
+ if ($unknown instanceof import_obsidian137.DropdownComponent) {
35306
35459
  return new ValidatorElementWrapper($unknown.selectEl);
35307
35460
  }
35308
- if ($unknown instanceof import_obsidian136.ProgressBarComponent) {
35461
+ if ($unknown instanceof import_obsidian137.ProgressBarComponent) {
35309
35462
  return new OverlayValidatorComponent($unknown.progressBar);
35310
35463
  }
35311
- if ($unknown instanceof import_obsidian136.SearchComponent) {
35464
+ if ($unknown instanceof import_obsidian137.SearchComponent) {
35312
35465
  return new ValidatorElementWrapper($unknown.inputEl);
35313
35466
  }
35314
- if ($unknown instanceof import_obsidian136.SliderComponent) {
35467
+ if ($unknown instanceof import_obsidian137.SliderComponent) {
35315
35468
  return new ValidatorElementWrapper($unknown.sliderEl);
35316
35469
  }
35317
- if ($unknown instanceof import_obsidian136.TextAreaComponent) {
35470
+ if ($unknown instanceof import_obsidian137.TextAreaComponent) {
35318
35471
  return new ValidatorElementWrapper($unknown.inputEl);
35319
35472
  }
35320
- if ($unknown instanceof import_obsidian136.TextComponent) {
35473
+ if ($unknown instanceof import_obsidian137.TextComponent) {
35321
35474
  return new ValidatorElementWrapper($unknown.inputEl);
35322
35475
  }
35323
- if ($unknown instanceof import_obsidian136.ToggleComponent) {
35476
+ if ($unknown instanceof import_obsidian137.ToggleComponent) {
35324
35477
  return new OverlayValidatorComponent($unknown.toggleEl);
35325
35478
  }
35326
35479
  return null;
@@ -35335,7 +35488,7 @@ __export(setting_ex_exports, {
35335
35488
  SettingEx: () => SettingEx,
35336
35489
  adoptSettingEx: () => adoptSettingEx
35337
35490
  });
35338
- var import_obsidian150 = require("obsidian");
35491
+ var import_obsidian151 = require("obsidian");
35339
35492
  init_object_utils();
35340
35493
 
35341
35494
  // src/obsidian/setting-components/checkbox-component.ts
@@ -35343,10 +35496,10 @@ var checkbox_component_exports = {};
35343
35496
  __export(checkbox_component_exports, {
35344
35497
  CheckboxComponent: () => CheckboxComponent
35345
35498
  });
35346
- var import_obsidian137 = require("obsidian");
35499
+ var import_obsidian138 = require("obsidian");
35347
35500
  init_css_class();
35348
35501
  init_plugin_context();
35349
- var CheckboxComponent = class extends import_obsidian137.ValueComponent {
35502
+ var CheckboxComponent = class extends import_obsidian138.ValueComponent {
35350
35503
  /**
35351
35504
  * An input element of the checkbox.
35352
35505
  */
@@ -35423,12 +35576,12 @@ var code_highlighter_component_exports = {};
35423
35576
  __export(code_highlighter_component_exports, {
35424
35577
  CodeHighlighterComponent: () => CodeHighlighterComponent
35425
35578
  });
35426
- var import_obsidian138 = require("obsidian");
35579
+ var import_obsidian139 = require("obsidian");
35427
35580
  init_array();
35428
35581
  init_async();
35429
35582
  init_css_class();
35430
35583
  init_plugin_context();
35431
- var CodeHighlighterComponent = class extends import_obsidian138.ValueComponent {
35584
+ var CodeHighlighterComponent = class extends import_obsidian139.ValueComponent {
35432
35585
  /**
35433
35586
  * An input element of the component.
35434
35587
  *
@@ -35470,7 +35623,7 @@ var CodeHighlighterComponent = class extends import_obsidian138.ValueComponent {
35470
35623
  addPluginCssClasses(containerEl, "code-highlighter-component" /* CodeHighlighterComponent */);
35471
35624
  const wrapper = containerEl.createDiv();
35472
35625
  addPluginCssClasses(wrapper, "setting-component-wrapper" /* SettingComponentWrapper */);
35473
- this.textAreaComponent = new import_obsidian138.TextAreaComponent(wrapper);
35626
+ this.textAreaComponent = new import_obsidian139.TextAreaComponent(wrapper);
35474
35627
  this.preEl = wrapper.createEl("pre", {
35475
35628
  attr: {
35476
35629
  tabIndex: "-1"
@@ -35663,7 +35816,7 @@ var date_component_exports = {};
35663
35816
  __export(date_component_exports, {
35664
35817
  DateComponent: () => DateComponent
35665
35818
  });
35666
- var import_obsidian140 = require("obsidian");
35819
+ var import_obsidian141 = require("obsidian");
35667
35820
  init_object_utils();
35668
35821
  init_css_class();
35669
35822
 
@@ -35678,10 +35831,10 @@ var typed_text_component_exports = {};
35678
35831
  __export(typed_text_component_exports, {
35679
35832
  TypedTextComponent: () => TypedTextComponent
35680
35833
  });
35681
- var import_obsidian139 = require("obsidian");
35834
+ var import_obsidian140 = require("obsidian");
35682
35835
  init_css_class();
35683
35836
  init_plugin_context();
35684
- var TypedTextComponent = class extends import_obsidian139.ValueComponent {
35837
+ var TypedTextComponent = class extends import_obsidian140.ValueComponent {
35685
35838
  /**
35686
35839
  * An input element of the component.
35687
35840
  */
@@ -35705,7 +35858,7 @@ var TypedTextComponent = class extends import_obsidian139.ValueComponent {
35705
35858
  */
35706
35859
  constructor(params) {
35707
35860
  super();
35708
- this.textComponent = new import_obsidian139.TextComponent(params.containerEl);
35861
+ this.textComponent = new import_obsidian140.TextComponent(params.containerEl);
35709
35862
  this.inputEl = this.textComponent.inputEl;
35710
35863
  this.inputEl.type = params.type;
35711
35864
  addPluginCssClasses(params.containerEl, params.cssClass);
@@ -35804,7 +35957,7 @@ var TypedRangeTextComponent = class extends TypedTextComponent {
35804
35957
  };
35805
35958
 
35806
35959
  // src/obsidian/setting-components/date-component.ts
35807
- var moment2 = extractDefaultExportInterop(import_obsidian140.moment);
35960
+ var moment2 = extractDefaultExportInterop(import_obsidian141.moment);
35808
35961
  var DATE_FORMAT = "YYYY-MM-DD";
35809
35962
  var DateComponent = class extends TypedRangeTextComponent {
35810
35963
  /**
@@ -35844,10 +35997,10 @@ var date_time_component_exports = {};
35844
35997
  __export(date_time_component_exports, {
35845
35998
  DateTimeComponent: () => DateTimeComponent
35846
35999
  });
35847
- var import_obsidian141 = require("obsidian");
36000
+ var import_obsidian142 = require("obsidian");
35848
36001
  init_object_utils();
35849
36002
  init_css_class();
35850
- var moment3 = extractDefaultExportInterop(import_obsidian141.moment);
36003
+ var moment3 = extractDefaultExportInterop(import_obsidian142.moment);
35851
36004
  var DATE_TIME_FORMAT = "YYYY-MM-DDTHH:mm";
35852
36005
  var DateTimeComponent = class extends TypedRangeTextComponent {
35853
36006
  /**
@@ -35987,10 +36140,10 @@ var month_component_exports = {};
35987
36140
  __export(month_component_exports, {
35988
36141
  MonthComponent: () => MonthComponent
35989
36142
  });
35990
- var import_obsidian142 = require("obsidian");
36143
+ var import_obsidian143 = require("obsidian");
35991
36144
  init_object_utils();
35992
36145
  init_css_class();
35993
- var moment4 = extractDefaultExportInterop(import_obsidian142.moment);
36146
+ var moment4 = extractDefaultExportInterop(import_obsidian143.moment);
35994
36147
  var DATE_FORMAT2 = "YYYY-MM";
35995
36148
  var MonthComponent = class extends TypedRangeTextComponent {
35996
36149
  /**
@@ -36038,10 +36191,10 @@ var multiple_dropdown_component_exports = {};
36038
36191
  __export(multiple_dropdown_component_exports, {
36039
36192
  MultipleDropdownComponent: () => MultipleDropdownComponent
36040
36193
  });
36041
- var import_obsidian143 = require("obsidian");
36194
+ var import_obsidian144 = require("obsidian");
36042
36195
  init_css_class();
36043
36196
  init_plugin_context();
36044
- var MultipleDropdownComponent = class extends import_obsidian143.ValueComponent {
36197
+ var MultipleDropdownComponent = class extends import_obsidian144.ValueComponent {
36045
36198
  /**
36046
36199
  * A select element of the component.
36047
36200
  *
@@ -36070,7 +36223,7 @@ var MultipleDropdownComponent = class extends import_obsidian143.ValueComponent
36070
36223
  */
36071
36224
  constructor(containerEl) {
36072
36225
  super();
36073
- this.dropdownComponent = new import_obsidian143.DropdownComponent(containerEl);
36226
+ this.dropdownComponent = new import_obsidian144.DropdownComponent(containerEl);
36074
36227
  this.dropdownComponent.selectEl.multiple = true;
36075
36228
  addPluginCssClasses(containerEl, "multiple-dropdown-component" /* MultipleDropdownComponent */);
36076
36229
  }
@@ -36243,10 +36396,10 @@ var multiple_text_component_exports = {};
36243
36396
  __export(multiple_text_component_exports, {
36244
36397
  MultipleTextComponent: () => MultipleTextComponent
36245
36398
  });
36246
- var import_obsidian144 = require("obsidian");
36399
+ var import_obsidian145 = require("obsidian");
36247
36400
  init_css_class();
36248
36401
  init_plugin_context();
36249
- var MultipleTextComponent = class extends import_obsidian144.ValueComponent {
36402
+ var MultipleTextComponent = class extends import_obsidian145.ValueComponent {
36250
36403
  /**
36251
36404
  * An input element of the component.
36252
36405
  *
@@ -36275,7 +36428,7 @@ var MultipleTextComponent = class extends import_obsidian144.ValueComponent {
36275
36428
  */
36276
36429
  constructor(containerEl) {
36277
36430
  super();
36278
- this.textAreaComponent = new import_obsidian144.TextAreaComponent(containerEl);
36431
+ this.textAreaComponent = new import_obsidian145.TextAreaComponent(containerEl);
36279
36432
  addPluginCssClasses(containerEl, "multiple-text-component" /* MultipleTextComponent */);
36280
36433
  }
36281
36434
  /**
@@ -36537,7 +36690,7 @@ var time_component_exports = {};
36537
36690
  __export(time_component_exports, {
36538
36691
  TimeComponent: () => TimeComponent
36539
36692
  });
36540
- var import_obsidian145 = require("obsidian");
36693
+ var import_obsidian146 = require("obsidian");
36541
36694
  init_css_class();
36542
36695
  var TimeComponent = class extends TypedRangeTextComponent {
36543
36696
  /**
@@ -36559,7 +36712,7 @@ var TimeComponent = class extends TypedRangeTextComponent {
36559
36712
  * @returns The date.
36560
36713
  */
36561
36714
  valueFromString($string) {
36562
- return import_obsidian145.moment.duration($string);
36715
+ return import_obsidian146.moment.duration($string);
36563
36716
  }
36564
36717
  /**
36565
36718
  * Converts a time to a string.
@@ -36576,7 +36729,7 @@ var TimeComponent = class extends TypedRangeTextComponent {
36576
36729
  } else {
36577
36730
  format2 = "HH:mm";
36578
36731
  }
36579
- return import_obsidian145.moment.utc(value.asMilliseconds()).format(format2);
36732
+ return import_obsidian146.moment.utc(value.asMilliseconds()).format(format2);
36580
36733
  }
36581
36734
  };
36582
36735
 
@@ -36585,10 +36738,10 @@ var tri_state_checkbox_component_exports = {};
36585
36738
  __export(tri_state_checkbox_component_exports, {
36586
36739
  TriStateCheckboxComponent: () => TriStateCheckboxComponent
36587
36740
  });
36588
- var import_obsidian146 = require("obsidian");
36741
+ var import_obsidian147 = require("obsidian");
36589
36742
  init_css_class();
36590
36743
  init_plugin_context();
36591
- var TriStateCheckboxComponent = class extends import_obsidian146.ValueComponent {
36744
+ var TriStateCheckboxComponent = class extends import_obsidian147.ValueComponent {
36592
36745
  /**
36593
36746
  * An input element of the checkbox.
36594
36747
  */
@@ -36666,10 +36819,10 @@ var typed_dropdown_component_exports = {};
36666
36819
  __export(typed_dropdown_component_exports, {
36667
36820
  TypedDropdownComponent: () => TypedDropdownComponent
36668
36821
  });
36669
- var import_obsidian147 = require("obsidian");
36822
+ var import_obsidian148 = require("obsidian");
36670
36823
  init_css_class();
36671
36824
  init_plugin_context();
36672
- var TypedDropdownComponent = class extends import_obsidian147.ValueComponent {
36825
+ var TypedDropdownComponent = class extends import_obsidian148.ValueComponent {
36673
36826
  /**
36674
36827
  * A select element of the component.
36675
36828
  *
@@ -36702,7 +36855,7 @@ var TypedDropdownComponent = class extends import_obsidian147.ValueComponent {
36702
36855
  */
36703
36856
  constructor(containerEl) {
36704
36857
  super();
36705
- this.dropdownComponent = new import_obsidian147.DropdownComponent(containerEl);
36858
+ this.dropdownComponent = new import_obsidian148.DropdownComponent(containerEl);
36706
36859
  addPluginCssClasses(containerEl, "typed-dropdown-component" /* TypedDropdownComponent */);
36707
36860
  }
36708
36861
  /**
@@ -36792,10 +36945,10 @@ var typed_multiple_dropdown_component_exports = {};
36792
36945
  __export(typed_multiple_dropdown_component_exports, {
36793
36946
  TypedMultipleDropdownComponent: () => TypedMultipleDropdownComponent
36794
36947
  });
36795
- var import_obsidian148 = require("obsidian");
36948
+ var import_obsidian149 = require("obsidian");
36796
36949
  init_css_class();
36797
36950
  init_plugin_context();
36798
- var TypedMultipleDropdownComponent = class extends import_obsidian148.ValueComponent {
36951
+ var TypedMultipleDropdownComponent = class extends import_obsidian149.ValueComponent {
36799
36952
  /**
36800
36953
  * A select element of the component.
36801
36954
  *
@@ -36973,10 +37126,10 @@ var week_component_exports = {};
36973
37126
  __export(week_component_exports, {
36974
37127
  WeekComponent: () => WeekComponent
36975
37128
  });
36976
- var import_obsidian149 = require("obsidian");
37129
+ var import_obsidian150 = require("obsidian");
36977
37130
  init_object_utils();
36978
37131
  init_css_class();
36979
- var moment6 = extractDefaultExportInterop(import_obsidian149.moment);
37132
+ var moment6 = extractDefaultExportInterop(import_obsidian150.moment);
36980
37133
  var DATE_FORMAT3 = "YYYY-[W]WW";
36981
37134
  var WeekComponent = class extends TypedRangeTextComponent {
36982
37135
  /**
@@ -37020,7 +37173,7 @@ var WeekComponent = class extends TypedRangeTextComponent {
37020
37173
  };
37021
37174
 
37022
37175
  // src/obsidian/setting-ex.ts
37023
- var SettingEx = class extends import_obsidian150.Setting {
37176
+ var SettingEx = class extends import_obsidian151.Setting {
37024
37177
  /**
37025
37178
  * Adds a {@link CheckboxComponent} to the setting.
37026
37179
  *
@@ -37237,7 +37390,7 @@ __export(validation_exports, {
37237
37390
  getOsUnsafePathCharsRegExp: () => getOsUnsafePathCharsRegExp,
37238
37391
  isValidationMessageHolder: () => isValidationMessageHolder
37239
37392
  });
37240
- var import_obsidian151 = require("obsidian");
37393
+ var import_obsidian152 = require("obsidian");
37241
37394
  init_reg_exp();
37242
37395
  function isValidationMessageHolder(value) {
37243
37396
  return value.validationMessage !== void 0;
@@ -37252,7 +37405,7 @@ function getOsAndObsidianUnsafePathCharsRegExp(isWindows) {
37252
37405
  ]);
37253
37406
  }
37254
37407
  function getOsUnsafePathCharsRegExp(isWindows) {
37255
- isWindows ??= import_obsidian151.Platform.isWin;
37408
+ isWindows ??= import_obsidian152.Platform.isWin;
37256
37409
  return isWindows ? WINDOWS_UNSAFE_PATH_CHARS : UNIX_UNSAFE_PATH_CHARS;
37257
37410
  }
37258
37411
 
@@ -37280,7 +37433,7 @@ var PluginSettingsTabEventsComponent = class extends ComponentEx {
37280
37433
  registerAsyncEvent(this, pluginSettingsComponent.on("saveSettings", (newState, oldState, context) => this.params.onSaveSettings(newState, oldState, context)));
37281
37434
  }
37282
37435
  };
37283
- var PluginSettingsTabBase = class extends mixinAsyncEvents()(import_obsidian152.PluginSettingTab) {
37436
+ var PluginSettingsTabBase = class extends mixinAsyncEvents()(import_obsidian153.PluginSettingTab) {
37284
37437
  /**
37285
37438
  * Whether the plugin settings tab is open.
37286
37439
  *
@@ -37318,7 +37471,7 @@ var PluginSettingsTabBase = class extends mixinAsyncEvents()(import_obsidian152.
37318
37471
  super(params.plugin.app, params.plugin);
37319
37472
  this.pluginSettingsComponent = params.pluginSettingsComponent;
37320
37473
  addPluginCssClasses(this.containerEl, "plugin-settings-tab" /* PluginSettingsTab */);
37321
- this.saveSettingsDebounced = (0, import_obsidian152.debounce)(
37474
+ this.saveSettingsDebounced = (0, import_obsidian153.debounce)(
37322
37475
  convertAsyncToSync(() => this.pluginSettingsComponent.saveToFile(SAVE_TO_FILE_CONTEXT)),
37323
37476
  this.saveSettingsDebounceTimeoutInMilliseconds
37324
37477
  );
@@ -37391,7 +37544,7 @@ var PluginSettingsTabBase = class extends mixinAsyncEvents()(import_obsidian152.
37391
37544
  }
37392
37545
  let shouldSkipOnChange = false;
37393
37546
  const UPDATE_VALIDATOR_EL_TIMEOUT_IN_MILLISECONDS = 100;
37394
- const updateValidatorElementDebounced = (0, import_obsidian152.debounce)(() => {
37547
+ const updateValidatorElementDebounced = (0, import_obsidian153.debounce)(() => {
37395
37548
  window.requestAnimationFrame(() => {
37396
37549
  updateValidatorEl();
37397
37550
  });
@@ -37474,7 +37627,7 @@ var PluginSettingsTabBase = class extends mixinAsyncEvents()(import_obsidian152.
37474
37627
  tooltipContentEl.textContent = validationMessage;
37475
37628
  tooltipEl?.toggle(!!validationMessage);
37476
37629
  } else if (validationMessage) {
37477
- (0, import_obsidian152.setTooltip)(validatorEl, validationMessage);
37630
+ (0, import_obsidian153.setTooltip)(validatorEl, validationMessage);
37478
37631
  }
37479
37632
  }
37480
37633
  }
@@ -37718,7 +37871,7 @@ __export(plugin_exports, {
37718
37871
  reloadPlugin: () => reloadPlugin,
37719
37872
  showErrorAndDisablePlugin: () => showErrorAndDisablePlugin
37720
37873
  });
37721
- var import_obsidian153 = require("obsidian");
37874
+ var import_obsidian154 = require("obsidian");
37722
37875
  init_async_events();
37723
37876
  init_error();
37724
37877
  init_function();
@@ -37727,7 +37880,7 @@ init_component_ex();
37727
37880
  init_plugin_notice_component();
37728
37881
  init_i18n();
37729
37882
  init_translations_map();
37730
- var PluginBase = class extends mixinAsyncEvents()(import_obsidian153.Plugin) {
37883
+ var PluginBase = class extends mixinAsyncEvents()(import_obsidian154.Plugin) {
37731
37884
  /**
37732
37885
  * Gets abort signal component.
37733
37886
  *
@@ -38035,7 +38188,7 @@ var plugin_cli_handler_registrar_exports = {};
38035
38188
  __export(plugin_cli_handler_registrar_exports, {
38036
38189
  PluginCliHandlerRegistrar: () => PluginCliHandlerRegistrar
38037
38190
  });
38038
- var import_obsidian154 = require("obsidian");
38191
+ var import_obsidian155 = require("obsidian");
38039
38192
  init_async();
38040
38193
  var PluginCliHandlerRegistrar = class {
38041
38194
  /**
@@ -38070,7 +38223,7 @@ var field_popover_exports = {};
38070
38223
  __export(field_popover_exports, {
38071
38224
  editFieldsInPopover: () => editFieldsInPopover
38072
38225
  });
38073
- var import_obsidian156 = require("obsidian");
38226
+ var import_obsidian157 = require("obsidian");
38074
38227
  init_object_utils();
38075
38228
  init_css_class();
38076
38229
 
@@ -38079,7 +38232,7 @@ var popover_exports = {};
38079
38232
  __export(popover_exports, {
38080
38233
  showPopover: () => showPopover
38081
38234
  });
38082
- var import_obsidian155 = require("obsidian");
38235
+ var import_obsidian156 = require("obsidian");
38083
38236
  init_css_class();
38084
38237
  init_i18n();
38085
38238
  init_plugin_context();
@@ -38136,7 +38289,7 @@ async function showPopover(params) {
38136
38289
  handleCancel();
38137
38290
  }
38138
38291
  });
38139
- const buttonsSetting = new import_obsidian155.Setting(popoverEl);
38292
+ const buttonsSetting = new import_obsidian156.Setting(popoverEl);
38140
38293
  buttonsSetting.addButton((button) => {
38141
38294
  button.setButtonText(okButtonText ?? t2(($) => $.obsidianDevUtils.buttons.ok)).setCta().setClass("ok-button" /* OkButton */).onClick(handleOk);
38142
38295
  });
@@ -38195,8 +38348,8 @@ async function editFieldsInPopover(params) {
38195
38348
  }));
38196
38349
  }
38197
38350
  function addField(containerEl, field) {
38198
- const setting = new import_obsidian156.Setting(containerEl).setName(field.name);
38199
- const textComponent = new import_obsidian156.TextComponent(setting.controlEl);
38351
+ const setting = new import_obsidian157.Setting(containerEl).setName(field.name);
38352
+ const textComponent = new import_obsidian157.TextComponent(setting.controlEl);
38200
38353
  textComponent.setValue(field.defaultValue ?? "");
38201
38354
  textComponent.setPlaceholder(field.placeholder ?? "");
38202
38355
  textComponent.inputEl.addClass("text-box" /* TextBox */);
@@ -38215,7 +38368,7 @@ __export(app_context_exports, {
38215
38368
  AppContext: () => AppContext,
38216
38369
  useApp: () => useApp
38217
38370
  });
38218
- var import_obsidian157 = require("obsidian");
38371
+ var import_obsidian158 = require("obsidian");
38219
38372
  var import_react = __toESM(require_react(), 1);
38220
38373
  init_type_guards();
38221
38374
  var AppContext = (0, import_react.createContext)(void 0);
@@ -38228,7 +38381,7 @@ var ribbon_icon_registrar_exports = {};
38228
38381
  __export(ribbon_icon_registrar_exports, {
38229
38382
  PluginRibbonIconRegistrar: () => PluginRibbonIconRegistrar
38230
38383
  });
38231
- var import_obsidian158 = require("obsidian");
38384
+ var import_obsidian159 = require("obsidian");
38232
38385
  var PluginRibbonIconRegistrar = class {
38233
38386
  /**
38234
38387
  * Creates a new instance of the {@link PluginRibbonIconRegistrar} class.
@@ -38289,8 +38442,8 @@ var setting_group_ex_exports = {};
38289
38442
  __export(setting_group_ex_exports, {
38290
38443
  SettingGroupEx: () => SettingGroupEx
38291
38444
  });
38292
- var import_obsidian159 = require("obsidian");
38293
- var SettingGroupEx = class extends import_obsidian159.SettingGroup {
38445
+ var import_obsidian160 = require("obsidian");
38446
+ var SettingGroupEx = class extends import_obsidian160.SettingGroup {
38294
38447
  /**
38295
38448
  * Creates a new setting group.
38296
38449
  *
@@ -38317,7 +38470,7 @@ var status_bar_item_registrar_exports = {};
38317
38470
  __export(status_bar_item_registrar_exports, {
38318
38471
  PluginStatusBarItemRegistrar: () => PluginStatusBarItemRegistrar
38319
38472
  });
38320
- var import_obsidian160 = require("obsidian");
38473
+ var import_obsidian161 = require("obsidian");
38321
38474
  var PluginStatusBarItemRegistrar = class {
38322
38475
  /**
38323
38476
  * Creates a new instance of the {@link PluginStatusBarItemRegistrar} class.
@@ -38592,7 +38745,7 @@ var view_registrar_exports = {};
38592
38745
  __export(view_registrar_exports, {
38593
38746
  PluginViewRegistrar: () => PluginViewRegistrar
38594
38747
  });
38595
- var import_obsidian161 = require("obsidian");
38748
+ var import_obsidian162 = require("obsidian");
38596
38749
  var PluginViewRegistrar = class {
38597
38750
  /**
38598
38751
  * Creates a new instance of the {@link PluginViewRegistrar} class.
@@ -38811,10 +38964,12 @@ __export(merged_exports, {
38811
38964
  EmptyFolderBehavior: () => EmptyFolderBehavior,
38812
38965
  ErrorWrapper: () => ErrorWrapper,
38813
38966
  EventRefDisposable: () => EventRefDisposable,
38967
+ FOLDER_NOTES_PLUGIN_ID: () => FOLDER_NOTES_PLUGIN_ID2,
38814
38968
  FileCommandHandler: () => FileCommandHandler,
38815
38969
  FileComponent: () => FileComponent,
38816
38970
  FileSystemType: () => FileSystemType,
38817
38971
  FolderCommandHandler: () => FolderCommandHandler,
38972
+ FolderNoteLocation: () => FolderNoteLocation,
38818
38973
  FunctionHandlingMode: () => FunctionHandlingMode,
38819
38974
  GenerateMarkdownLinkDefaultParamsComponent: () => GenerateMarkdownLinkDefaultParamsComponent,
38820
38975
  GlobalCommandHandler: () => GlobalCommandHandler,
@@ -39148,6 +39303,7 @@ __export(merged_exports, {
39148
39303
  isParseLinkReference: () => isParseLinkReference,
39149
39304
  isResourceLockedForPath: () => isResourceLockedForPath,
39150
39305
  isResourceLockedForPathByAncestor: () => isResourceLockedForPathByAncestor,
39306
+ isSpellcheckEnabled: () => isSpellcheckEnabled,
39151
39307
  isTreatedAsAttachment: () => isTreatedAsAttachment,
39152
39308
  isUrl: () => isUrl,
39153
39309
  isValidRegExp: () => isValidRegExp,
@@ -39230,6 +39386,8 @@ __export(merged_exports, {
39230
39386
  requestResourceUnlockForPath: () => requestResourceUnlockForPath,
39231
39387
  resetObsidianDevUtilsState: () => resetObsidianDevUtilsState,
39232
39388
  resolve: () => resolve,
39389
+ resolveFolderNote: () => resolveFolderNote,
39390
+ resolveFolderNoteConfig: () => resolveFolderNoteConfig,
39233
39391
  resolveNotebookNavigatorApi: () => resolveNotebookNavigatorApi,
39234
39392
  resolveValue: () => resolveValue,
39235
39393
  retryWithTimeout: () => retryWithTimeout,
@@ -39342,8 +39500,8 @@ init_value_provider();
39342
39500
  init_value_wrapper();
39343
39501
 
39344
39502
  // integration-test-plugin/main.ts
39345
- var import_obsidian162 = require("obsidian");
39346
- var IntegrationTestPlugin = class extends import_obsidian162.Plugin {
39503
+ var import_obsidian163 = require("obsidian");
39504
+ var IntegrationTestPlugin = class extends import_obsidian163.Plugin {
39347
39505
  onload() {
39348
39506
  window.__obsidianDevUtilsModule = src_exports;
39349
39507
  }