@bobfrankston/rmfmail 1.1.65 → 1.1.68

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.
@@ -9137,7 +9137,7 @@ document.getElementById("btn-open-log")?.addEventListener("click", async () => {
9137
9137
  }
9138
9138
  });
9139
9139
  async function openJsoncEditor(initialFile) {
9140
- const { readJsoncFile: readJsoncFile2, writeJsoncFile: writeJsoncFile2, readConfigHelp: readConfigHelp2, formatJsonc: formatJsonc2 } = await Promise.resolve().then(() => (init_api_client(), api_client_exports));
9140
+ const { readJsoncFile: readJsoncFile2, writeJsoncFile: writeJsoncFile2, readConfigHelp: readConfigHelp2, formatJsonc: formatJsonc2, openLocalPath: openLocalPath2 } = await Promise.resolve().then(() => (init_api_client(), api_client_exports));
9141
9141
  const backdrop = document.createElement("div");
9142
9142
  backdrop.className = "mailx-modal-backdrop";
9143
9143
  const panel = document.createElement("div");
@@ -9173,6 +9173,7 @@ async function openJsoncEditor(initialFile) {
9173
9173
  <div class="mailx-modal-error" id="jsonc-error" hidden></div>
9174
9174
  <div class="mailx-modal-buttons">
9175
9175
  <button type="button" class="mailx-modal-btn" data-action="format" title="Reformat indentation while preserving comments and trailing commas">Format</button>
9176
+ <button type="button" class="mailx-modal-btn" data-action="opensource" id="jsonc-opensource" title="Open the folder containing config.jsonc so you can edit it in a full editor" hidden>Open source folder</button>
9176
9177
  <span class="mailx-modal-spacer"></span>
9177
9178
  <button type="button" class="mailx-modal-btn" data-action="cancel">Cancel</button>
9178
9179
  <button type="button" class="mailx-modal-btn mailx-modal-btn-primary" data-action="save">Save</button>
@@ -9274,10 +9275,16 @@ async function openJsoncEditor(initialFile) {
9274
9275
  errorEl.hidden = false;
9275
9276
  }
9276
9277
  };
9278
+ const openSourceBtn = panel.querySelector("#jsonc-opensource");
9279
+ const updateOpenSource = () => {
9280
+ openSourceBtn.hidden = fileSelect.value !== "config.jsonc";
9281
+ };
9282
+ updateOpenSource();
9277
9283
  await Promise.all([loadFile(), loadHelp()]);
9278
9284
  fileSelect.addEventListener("change", () => {
9279
9285
  loadFile();
9280
9286
  loadHelp();
9287
+ updateOpenSource();
9281
9288
  });
9282
9289
  const close = () => {
9283
9290
  if (validateTimer) window.clearTimeout(validateTimer);
@@ -9300,6 +9307,15 @@ async function openJsoncEditor(initialFile) {
9300
9307
  close();
9301
9308
  return;
9302
9309
  }
9310
+ if (action === "opensource") {
9311
+ try {
9312
+ await openLocalPath2("config");
9313
+ } catch (e) {
9314
+ errorEl.textContent = `Couldn't open folder: ${e?.message || e}`;
9315
+ errorEl.hidden = false;
9316
+ }
9317
+ return;
9318
+ }
9303
9319
  if (action === "format") {
9304
9320
  btn.disabled = true;
9305
9321
  const orig = btn.textContent;