obsidian-integration-testing 17.0.2 → 17.1.1

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.
@@ -33,12 +33,14 @@ __export(capture_obsidian_screenshot_exports, {
33
33
  module.exports = __toCommonJS(capture_obsidian_screenshot_exports);
34
34
  var import_node_process = __toESM(require("node:process"), 1);
35
35
  var import_context_provider = require("./context-provider.cjs");
36
+ var import_hide_caret = require("./hide-caret.cjs");
36
37
  var import_hide_vault_name = require("./hide-vault-name.cjs");
37
38
  var import_normalize_optional_properties = require("./normalize-optional-properties.cjs");
38
39
  var import_transport_factory = require("./transport-factory.cjs");
39
40
  async function captureObsidianScreenshot(options) {
40
41
  const {
41
42
  heightInPixels,
43
+ shouldHideCaret = true,
42
44
  shouldHideVaultName = true,
43
45
  transport: transportOverride,
44
46
  vaultPath,
@@ -55,14 +57,22 @@ async function captureObsidianScreenshot(options) {
55
57
  vaultPath: cwd
56
58
  });
57
59
  }
58
- return transport.captureScreenshot((0, import_normalize_optional_properties.normalizeOptionalProperties)({
59
- cwd,
60
- heightInPixels,
61
- widthInPixels
62
- }));
60
+ const hiddenCaret = shouldHideCaret ? await (0, import_hide_caret.hideCaret)({
61
+ transport,
62
+ vaultPath: cwd
63
+ }) : void 0;
64
+ try {
65
+ return await transport.captureScreenshot((0, import_normalize_optional_properties.normalizeOptionalProperties)({
66
+ cwd,
67
+ heightInPixels,
68
+ widthInPixels
69
+ }));
70
+ } finally {
71
+ await hiddenCaret?.restore();
72
+ }
63
73
  }
64
74
  // Annotate the CommonJS export names for ESM import in node:
65
75
  0 && (module.exports = {
66
76
  captureObsidianScreenshot
67
77
  });
68
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NhcHR1cmUtb2JzaWRpYW4tc2NyZWVuc2hvdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENhcHR1cmVzIGEgc2NyZWVuc2hvdCBvZiB0aGUgT2JzaWRpYW4gaW5zdGFuY2UgdGhlIGN1cnJlbnQgdGVzdCBjb250ZXh0IGlzXG4gKiBhbHJlYWR5IGRyaXZpbmcuXG4gKlxuICogVGhlIHRyYW5zcG9ydC1sZXZlbCBgY2FwdHVyZVNjcmVlbnNob3RgIG5lZWRzIGEgdHJhbnNwb3J0IGluIGhhbmQsIHdoaWNoIGFcbiAqIHRlc3QgcnVubmluZyB1bmRlciB0aGUgaGFybmVzcydzIGdsb2JhbCBzZXR1cCBuZXZlciBoYXMgXHUyMDE0IHRoZSBpbnN0YW5jZSBpc1xuICogb3duZWQgYnkgdGhhdCBzZXR1cCBhbmQgcmVhY2hlZCB0aHJvdWdoIHRoZSBjb250ZXh0IHByb3ZpZGVyLiBUaGlzIGlzIHRoZVxuICogY29udGV4dC1yZXNvbHZpbmcgZW50cnkgcG9pbnQsIHRoZSBzY3JlZW5zaG90IGNvdW50ZXJwYXJ0IG9mXG4gKiBgZXZhbEluT2JzaWRpYW5gIC8gYHBvbGxJbk9ic2lkaWFuYDogd2l0aCBubyBhcmd1bWVudHMgYXQgYWxsIGl0IGNhcHR1cmVzXG4gKiB3aGF0ZXZlciBpbnN0YW5jZSB0aGUgYWN0aXZlIHByb2plY3QgaXMgZHJpdmluZywgZGVza3RvcCBvciBtb2JpbGUuXG4gKlxuICogSXQgYWxzbyBtYWtlcyB0aGUgZnJhbWUgUkVQUk9EVUNJQkxFIGJlZm9yZSB0YWtpbmcgaXQsIGJ5IGhpZGluZyB0aGUgdmF1bHQnc1xuICogbmFtZSBcdTIwMTQgc2VlIGBoaWRlLXZhdWx0LW5hbWUudHNgIGZvciB3aHkgYSBgdGVtcC12YXVsdC08cmFuZG9tPmAgYmxlZWRzXG4gKiB0aHJvdWdoIHRoZSBjYXB0aW9uIGJhbmQgYW5kIHJld3JpdGVzIGEgY2hlY2tlZC1pbiBQTkcgb24gZXZlcnkgcnVuLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBJbnRlZ3JhdGlvbi10aW1lIGNvZGUgKGRyaXZlcyBhIGxpdmUgT2JzaWRpYW4pIGNvdmVyZWQgYnkgaW50ZWdyYXRpb24gdGVzdHMsIG5vdCB1bml0IHRlc3RzLiAqL1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuXG5pbXBvcnQgdHlwZSB7IENhcHR1cmVTY3JlZW5zaG90UGFyYW1zIH0gZnJvbSAnLi9jYXB0dXJlLXNjcmVlbnNob3QuY2pzJztcbmltcG9ydCB0eXBlIHsgT2JzaWRpYW5UcmFuc3BvcnQgfSBmcm9tICcuL3RyYW5zcG9ydC5janMnO1xuXG5pbXBvcnQge1xuICBnZXRUcmFuc3BvcnRPcHRpb25zLFxuICBnZXRWYXVsdFBhdGhcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5pbXBvcnQgeyBoaWRlVmF1bHROYW1lIH0gZnJvbSAnLi9oaWRlLXZhdWx0LW5hbWUuY2pzJztcbmltcG9ydCB7IG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllcyB9IGZyb20gJy4vbm9ybWFsaXplLW9wdGlvbmFsLXByb3BlcnRpZXMuY2pzJztcbmltcG9ydCB7IGdldE9yQ3JlYXRlVHJhbnNwb3J0IH0gZnJvbSAnLi90cmFuc3BvcnQtZmFjdG9yeS5janMnO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayBjYXB0dXJlT2JzaWRpYW5TY3JlZW5zaG90fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDYXB0dXJlT2JzaWRpYW5TY3JlZW5zaG90T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgZXhhY3QgaGVpZ2h0IGluIHBpeGVscyB0aGUgY2FwdHVyZWQgaW1hZ2Ugc2hvdWxkIGhhdmUuXG4gICAqXG4gICAqIERlc2t0b3Agb25seSwgYW5kIG9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIHtAbGluayB3aWR0aEluUGl4ZWxzfS5cbiAgICogSWdub3JlZCBvbiBtb2JpbGUsIHdoZXJlIHRoZSBpbWFnZSBpcyBhbHdheXMgdGhlIGRldmljZSdzIG5hdGl2ZVxuICAgKiBmcmFtZWJ1ZmZlciBcdTIwMTQgc2l6ZSB0aG9zZSBieSBjaG9vc2luZyBhbiBBVkQgd2l0aCB0aGUgd2FudGVkIHNjcmVlblxuICAgKiBnZW9tZXRyeS5cbiAgICovXG4gIHJlYWRvbmx5IGhlaWdodEluUGl4ZWxzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGhpZGUgdGhlIHZhdWx0J3MgbmFtZSBiZWZvcmUgY2FwdHVyaW5nLCBzbyB0aGUgZnJhbWUgZG9lcyBub3RcbiAgICogZGVwZW5kIG9uIHRoZSByYW5kb20gc3VmZml4IG9mIHRoZSBoYXJuZXNzJ3MgdGVtcG9yYXJ5IHZhdWx0LlxuICAgKlxuICAgKiBBIGRlZmF1bHQgcmF0aGVyIHRoYW4gYSBrbm9iOiByZXByb2R1Y2liaWxpdHkgaXMgd2hhdCBhIGNoZWNrZWQtaW5cbiAgICogc2NyZWVuc2hvdCBpcyBmb3IsIGFuZCB0aGUgcm93IGl0IGNvbGxhcHNlcyBzaXRzIHVuZGVyIHRoZSBjYXB0aW9uIGJhbmQsXG4gICAqIHNvIG5vdGhpbmcgYSByZWFkZXIgc2VlcyBtb3Zlcy4gVHVybiBpdCBvZmYgb25seSB0byBwaG90b2dyYXBoIHRoZSB2YXVsdFxuICAgKiBzd2l0Y2hlciBpdHNlbGYuXG4gICAqXG4gICAqIEBkZWZhdWx0IGB0cnVlYFxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkSGlkZVZhdWx0TmFtZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlIHRoZSB0cmFuc3BvcnQuIFdoZW4gb21pdHRlZCwgdGhlIHRyYW5zcG9ydCB0aGUgY3VycmVudCB0ZXN0XG4gICAqIGNvbnRleHQgaXMgZHJpdmluZyBpcyB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdHJhbnNwb3J0PzogT2JzaWRpYW5UcmFuc3BvcnQ7XG5cbiAgLyoqXG4gICAqIFRoZSB2YXVsdCBwYXRoIHRvIGNhcHR1cmUuIFdoZW4gb21pdHRlZCwgdGhlIGN1cnJlbnQgdGVzdCBjb250ZXh0J3MgdmF1bHRcbiAgICogaXMgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHZhdWx0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGV4YWN0IHdpZHRoIGluIHBpeGVscyB0aGUgY2FwdHVyZWQgaW1hZ2Ugc2hvdWxkIGhhdmUuXG4gICAqXG4gICAqIFNlZSB7QGxpbmsgaGVpZ2h0SW5QaXhlbHN9IFx1MjAxNCB0aGUgdHdvIGFyZSBzZXQgdG9nZXRoZXIgb3Igbm90IGF0IGFsbC5cbiAgICovXG4gIHJlYWRvbmx5IHdpZHRoSW5QaXhlbHM/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQ2FwdHVyZXMgYSBQTkcgc2NyZWVuc2hvdCBvZiB0aGUgcnVubmluZyBPYnNpZGlhbiBpbnN0YW5jZSwgcmVzb2x2aW5nIHRoZVxuICogdHJhbnNwb3J0IGFuZCB2YXVsdCBmcm9tIHRoZSBjdXJyZW50IHRlc3QgY29udGV4dC5cbiAqXG4gKiBUaGUgdmF1bHQncyBuYW1lIGlzIGhpZGRlbiBmaXJzdCwgc28gdHdvIHJ1bnMgb2YgdGhlIHNhbWUgc3VpdGUgYWdhaW5zdCB0d29cbiAqIGRpZmZlcmVudGx5LW5hbWVkIHRlbXBvcmFyeSB2YXVsdHMgcHJvZHVjZSBieXRlLWlkZW50aWNhbCBQTkdzLiBQYXNzXG4gKiB7QGxpbmsgQ2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdE9wdGlvbnMuc2hvdWxkSGlkZVZhdWx0TmFtZX0gYXMgYGZhbHNlYCB0b1xuICogcGhvdG9ncmFwaCBpdC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbmFsIHNpemUsIHRyYW5zcG9ydCBhbmQgdmF1bHQgb3ZlcnJpZGVzLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB0aGUgcmF3IFBORyBieXRlcy5cbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIGFjdGl2ZSB0cmFuc3BvcnQgY2Fubm90IGNhcHR1cmUgc2NyZWVuc2hvdHMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjYXB0dXJlT2JzaWRpYW5TY3JlZW5zaG90KG9wdGlvbnM/OiBDYXB0dXJlT2JzaWRpYW5TY3JlZW5zaG90T3B0aW9ucyk6IFByb21pc2U8VWludDhBcnJheT4ge1xuICBjb25zdCB7XG4gICAgaGVpZ2h0SW5QaXhlbHMsXG4gICAgc2hvdWxkSGlkZVZhdWx0TmFtZSA9IHRydWUsXG4gICAgdHJhbnNwb3J0OiB0cmFuc3BvcnRPdmVycmlkZSxcbiAgICB2YXVsdFBhdGgsXG4gICAgd2lkdGhJblBpeGVsc1xuICB9ID0gb3B0aW9ucyA/PyB7fTtcblxuICBjb25zdCBjd2QgPSB2YXVsdFBhdGggPz8gZ2V0VmF1bHRQYXRoKCkgPz8gcHJvY2Vzcy5jd2QoKTtcbiAgY29uc3QgdHJhbnNwb3J0ID0gdHJhbnNwb3J0T3ZlcnJpZGUgPz8gYXdhaXQgZ2V0T3JDcmVhdGVUcmFuc3BvcnQoZ2V0VHJhbnNwb3J0T3B0aW9ucygpKTtcblxuICBpZiAoIXRyYW5zcG9ydC5jYXB0dXJlU2NyZWVuc2hvdCkge1xuICAgIHRocm93IG5ldyBFcnJvcignY2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdDogdGhlIGFjdGl2ZSB0cmFuc3BvcnQgY2Fubm90IGNhcHR1cmUgc2NyZWVuc2hvdHMuJyk7XG4gIH1cblxuICBpZiAoc2hvdWxkSGlkZVZhdWx0TmFtZSkge1xuICAgIGF3YWl0IGhpZGVWYXVsdE5hbWUoe1xuICAgICAgdHJhbnNwb3J0LFxuICAgICAgdmF1bHRQYXRoOiBjd2RcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB0cmFuc3BvcnQuY2FwdHVyZVNjcmVlbnNob3Qobm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzPENhcHR1cmVTY3JlZW5zaG90UGFyYW1zPih7XG4gICAgY3dkLFxuICAgIGhlaWdodEluUGl4ZWxzLFxuICAgIHdpZHRoSW5QaXhlbHNcbiAgfSkpO1xufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFvQkEsMEJBQW9CO0FBS3BCLDhCQUdPO0FBQ1AsNkJBQThCO0FBQzlCLDJDQUE0QztBQUM1QywrQkFBcUM7QUE4RHJDLGVBQXNCLDBCQUEwQixTQUFpRTtBQUMvRyxRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0Esc0JBQXNCO0FBQUEsSUFDdEIsV0FBVztBQUFBLElBQ1g7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJLFdBQVcsQ0FBQztBQUVoQixRQUFNLE1BQU0saUJBQWEsc0NBQWEsS0FBSyxvQkFBQUEsUUFBUSxJQUFJO0FBQ3ZELFFBQU0sWUFBWSxxQkFBcUIsVUFBTSxtREFBcUIsNkNBQW9CLENBQUM7QUFFdkYsTUFBSSxDQUFDLFVBQVUsbUJBQW1CO0FBQ2hDLFVBQU0sSUFBSSxNQUFNLDZFQUE2RTtBQUFBLEVBQy9GO0FBRUEsTUFBSSxxQkFBcUI7QUFDdkIsY0FBTSxzQ0FBYztBQUFBLE1BQ2xCO0FBQUEsTUFDQSxXQUFXO0FBQUEsSUFDYixDQUFDO0FBQUEsRUFDSDtBQUVBLFNBQU8sVUFBVSxzQkFBa0Isa0VBQXFEO0FBQUEsSUFDdEY7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLEVBQ0YsQ0FBQyxDQUFDO0FBQ0o7IiwKICAibmFtZXMiOiBbInByb2Nlc3MiXQp9Cg==
78
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2NhcHR1cmUtb2JzaWRpYW4tc2NyZWVuc2hvdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENhcHR1cmVzIGEgc2NyZWVuc2hvdCBvZiB0aGUgT2JzaWRpYW4gaW5zdGFuY2UgdGhlIGN1cnJlbnQgdGVzdCBjb250ZXh0IGlzXG4gKiBhbHJlYWR5IGRyaXZpbmcuXG4gKlxuICogVGhlIHRyYW5zcG9ydC1sZXZlbCBgY2FwdHVyZVNjcmVlbnNob3RgIG5lZWRzIGEgdHJhbnNwb3J0IGluIGhhbmQsIHdoaWNoIGFcbiAqIHRlc3QgcnVubmluZyB1bmRlciB0aGUgaGFybmVzcydzIGdsb2JhbCBzZXR1cCBuZXZlciBoYXMgXHUyMDE0IHRoZSBpbnN0YW5jZSBpc1xuICogb3duZWQgYnkgdGhhdCBzZXR1cCBhbmQgcmVhY2hlZCB0aHJvdWdoIHRoZSBjb250ZXh0IHByb3ZpZGVyLiBUaGlzIGlzIHRoZVxuICogY29udGV4dC1yZXNvbHZpbmcgZW50cnkgcG9pbnQsIHRoZSBzY3JlZW5zaG90IGNvdW50ZXJwYXJ0IG9mXG4gKiBgZXZhbEluT2JzaWRpYW5gIC8gYHBvbGxJbk9ic2lkaWFuYDogd2l0aCBubyBhcmd1bWVudHMgYXQgYWxsIGl0IGNhcHR1cmVzXG4gKiB3aGF0ZXZlciBpbnN0YW5jZSB0aGUgYWN0aXZlIHByb2plY3QgaXMgZHJpdmluZywgZGVza3RvcCBvciBtb2JpbGUuXG4gKlxuICogSXQgYWxzbyBtYWtlcyB0aGUgZnJhbWUgUkVQUk9EVUNJQkxFIGJlZm9yZSB0YWtpbmcgaXQsIGJ5IGhpZGluZyB0aGUgdmF1bHQnc1xuICogbmFtZSBcdTIwMTQgc2VlIGBoaWRlLXZhdWx0LW5hbWUudHNgIGZvciB3aHkgYSBgdGVtcC12YXVsdC08cmFuZG9tPmAgYmxlZWRzXG4gKiB0aHJvdWdoIHRoZSBjYXB0aW9uIGJhbmQgYW5kIHJld3JpdGVzIGEgY2hlY2tlZC1pbiBQTkcgb24gZXZlcnkgcnVuIFx1MjAxNCBhbmQgYnlcbiAqIGhpZGluZyB0aGUgZm9jdXNlZCBlbGVtZW50J3MgYmxpbmtpbmcgY2FyZXQgZm9yIHRoZSBsZW5ndGggb2YgdGhlIGNhcHR1cmUgXHUyMDE0XG4gKiBzZWUgYGhpZGUtY2FyZXQudHNgIGZvciB3aHkgdGhhdCBpcyBhIHRyYW5zcGFyZW50IGNhcmV0IGFuZCBub3QgYSBibHVyLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBJbnRlZ3JhdGlvbi10aW1lIGNvZGUgKGRyaXZlcyBhIGxpdmUgT2JzaWRpYW4pIGNvdmVyZWQgYnkgaW50ZWdyYXRpb24gdGVzdHMsIG5vdCB1bml0IHRlc3RzLiAqL1xuXG5pbXBvcnQgcHJvY2VzcyBmcm9tICdub2RlOnByb2Nlc3MnO1xuXG5pbXBvcnQgdHlwZSB7IENhcHR1cmVTY3JlZW5zaG90UGFyYW1zIH0gZnJvbSAnLi9jYXB0dXJlLXNjcmVlbnNob3QuY2pzJztcbmltcG9ydCB0eXBlIHsgT2JzaWRpYW5UcmFuc3BvcnQgfSBmcm9tICcuL3RyYW5zcG9ydC5janMnO1xuXG5pbXBvcnQge1xuICBnZXRUcmFuc3BvcnRPcHRpb25zLFxuICBnZXRWYXVsdFBhdGhcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5pbXBvcnQgeyBoaWRlQ2FyZXQgfSBmcm9tICcuL2hpZGUtY2FyZXQuY2pzJztcbmltcG9ydCB7IGhpZGVWYXVsdE5hbWUgfSBmcm9tICcuL2hpZGUtdmF1bHQtbmFtZS5janMnO1xuaW1wb3J0IHsgbm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzIH0gZnJvbSAnLi9ub3JtYWxpemUtb3B0aW9uYWwtcHJvcGVydGllcy5janMnO1xuaW1wb3J0IHsgZ2V0T3JDcmVhdGVUcmFuc3BvcnQgfSBmcm9tICcuL3RyYW5zcG9ydC1mYWN0b3J5LmNqcyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3Ige0BsaW5rIGNhcHR1cmVPYnNpZGlhblNjcmVlbnNob3R9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENhcHR1cmVPYnNpZGlhblNjcmVlbnNob3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBleGFjdCBoZWlnaHQgaW4gcGl4ZWxzIHRoZSBjYXB0dXJlZCBpbWFnZSBzaG91bGQgaGF2ZS5cbiAgICpcbiAgICogRGVza3RvcCBvbmx5LCBhbmQgb25seSBtZWFuaW5nZnVsIHRvZ2V0aGVyIHdpdGgge0BsaW5rIHdpZHRoSW5QaXhlbHN9LlxuICAgKiBJZ25vcmVkIG9uIG1vYmlsZSwgd2hlcmUgdGhlIGltYWdlIGlzIGFsd2F5cyB0aGUgZGV2aWNlJ3MgbmF0aXZlXG4gICAqIGZyYW1lYnVmZmVyIFx1MjAxNCBzaXplIHRob3NlIGJ5IGNob29zaW5nIGFuIEFWRCB3aXRoIHRoZSB3YW50ZWQgc2NyZWVuXG4gICAqIGdlb21ldHJ5LlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0SW5QaXhlbHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gaGlkZSB0aGUgZm9jdXNlZCBlbGVtZW50J3MgY2FyZXQgd2hpbGUgY2FwdHVyaW5nLCBzbyB0aGUgZnJhbWVcbiAgICogZG9lcyBub3QgZGVwZW5kIG9uIHdoaWNoIHBoYXNlIG9mIGl0cyBibGluayB0aGUgY2FwdHVyZSBjYXVnaHQuXG4gICAqXG4gICAqIFRoZSBjYXJldCBpcyBtYWRlIHRyYW5zcGFyZW50LCBub3QgYmx1cnJlZDogdGhlIGZvY3VzLCBpdHMgcmluZyBhbmRcbiAgICogYW55dGhpbmcgb3BlbiBiZWNhdXNlIG9mIGl0IFx1MjAxNCBhIHN1Z2dlc3RlciB1bmRlciBhbiBpbnB1dCBcdTIwMTQgYWxsIHN0YXkgYXMgdGhlXG4gICAqIHRlc3QgYnVpbHQgdGhlbSwgYW5kIHRoZSBjYXJldCBpcyBwdXQgYmFjayBvbmNlIHRoZSBmcmFtZSBpcyB0YWtlbi4gVHVybiBpdFxuICAgKiBvZmYgb25seSB0byBwaG90b2dyYXBoIHRoZSBjYXJldCBpdHNlbGYsIGFuZCBleHBlY3Qgc3VjaCBhIGZyYW1lIHRvIGRpZmZlclxuICAgKiBiZXR3ZWVuIHJ1bnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGB0cnVlYFxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkSGlkZUNhcmV0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBoaWRlIHRoZSB2YXVsdCdzIG5hbWUgYmVmb3JlIGNhcHR1cmluZywgc28gdGhlIGZyYW1lIGRvZXMgbm90XG4gICAqIGRlcGVuZCBvbiB0aGUgcmFuZG9tIHN1ZmZpeCBvZiB0aGUgaGFybmVzcydzIHRlbXBvcmFyeSB2YXVsdC5cbiAgICpcbiAgICogQSBkZWZhdWx0IHJhdGhlciB0aGFuIGEga25vYjogcmVwcm9kdWNpYmlsaXR5IGlzIHdoYXQgYSBjaGVja2VkLWluXG4gICAqIHNjcmVlbnNob3QgaXMgZm9yLCBhbmQgdGhlIHJvdyBpdCBjb2xsYXBzZXMgc2l0cyB1bmRlciB0aGUgY2FwdGlvbiBiYW5kLFxuICAgKiBzbyBub3RoaW5nIGEgcmVhZGVyIHNlZXMgbW92ZXMuIFR1cm4gaXQgb2ZmIG9ubHkgdG8gcGhvdG9ncmFwaCB0aGUgdmF1bHRcbiAgICogc3dpdGNoZXIgaXRzZWxmLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcbiAgICovXG4gIHJlYWRvbmx5IHNob3VsZEhpZGVWYXVsdE5hbWU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZSB0aGUgdHJhbnNwb3J0LiBXaGVuIG9taXR0ZWQsIHRoZSB0cmFuc3BvcnQgdGhlIGN1cnJlbnQgdGVzdFxuICAgKiBjb250ZXh0IGlzIGRyaXZpbmcgaXMgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHRyYW5zcG9ydD86IE9ic2lkaWFuVHJhbnNwb3J0O1xuXG4gIC8qKlxuICAgKiBUaGUgdmF1bHQgcGF0aCB0byBjYXB0dXJlLiBXaGVuIG9taXR0ZWQsIHRoZSBjdXJyZW50IHRlc3QgY29udGV4dCdzIHZhdWx0XG4gICAqIGlzIHVzZWQuXG4gICAqL1xuICByZWFkb25seSB2YXVsdFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBleGFjdCB3aWR0aCBpbiBwaXhlbHMgdGhlIGNhcHR1cmVkIGltYWdlIHNob3VsZCBoYXZlLlxuICAgKlxuICAgKiBTZWUge0BsaW5rIGhlaWdodEluUGl4ZWxzfSBcdTIwMTQgdGhlIHR3byBhcmUgc2V0IHRvZ2V0aGVyIG9yIG5vdCBhdCBhbGwuXG4gICAqL1xuICByZWFkb25seSB3aWR0aEluUGl4ZWxzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIENhcHR1cmVzIGEgUE5HIHNjcmVlbnNob3Qgb2YgdGhlIHJ1bm5pbmcgT2JzaWRpYW4gaW5zdGFuY2UsIHJlc29sdmluZyB0aGVcbiAqIHRyYW5zcG9ydCBhbmQgdmF1bHQgZnJvbSB0aGUgY3VycmVudCB0ZXN0IGNvbnRleHQuXG4gKlxuICogVGhlIHZhdWx0J3MgbmFtZSBpcyBoaWRkZW4gZmlyc3QsIHNvIHR3byBydW5zIG9mIHRoZSBzYW1lIHN1aXRlIGFnYWluc3QgdHdvXG4gKiBkaWZmZXJlbnRseS1uYW1lZCB0ZW1wb3JhcnkgdmF1bHRzIHByb2R1Y2UgYnl0ZS1pZGVudGljYWwgUE5Hcy4gUGFzc1xuICoge0BsaW5rIENhcHR1cmVPYnNpZGlhblNjcmVlbnNob3RPcHRpb25zLnNob3VsZEhpZGVWYXVsdE5hbWV9IGFzIGBmYWxzZWAgdG9cbiAqIHBob3RvZ3JhcGggaXQuIFRoZSBmb2N1c2VkIGVsZW1lbnQncyBjYXJldCBpcyBoaWRkZW4gZm9yIHRoZSBjYXB0dXJlIHRvbywgYW5kXG4gKiByZXN0b3JlZCBhZnRlciBpdCwgc28gYSBmcmFtZSB3aXRoIGEgZm9jdXNlZCBmaWVsZCBkb2VzIG5vdCBhbHRlcm5hdGUgYmV0d2VlblxuICogdHdvIGJsaW5rIHBoYXNlczsge0BsaW5rIENhcHR1cmVPYnNpZGlhblNjcmVlbnNob3RPcHRpb25zLnNob3VsZEhpZGVDYXJldH1cbiAqIHR1cm5zIHRoYXQgb2ZmLlxuICpcbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9uYWwgc2l6ZSwgdHJhbnNwb3J0IGFuZCB2YXVsdCBvdmVycmlkZXMuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIHRoZSByYXcgUE5HIGJ5dGVzLlxuICogQHRocm93cyBFcnJvciBpZiB0aGUgYWN0aXZlIHRyYW5zcG9ydCBjYW5ub3QgY2FwdHVyZSBzY3JlZW5zaG90cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhcHR1cmVPYnNpZGlhblNjcmVlbnNob3Qob3B0aW9ucz86IENhcHR1cmVPYnNpZGlhblNjcmVlbnNob3RPcHRpb25zKTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gIGNvbnN0IHtcbiAgICBoZWlnaHRJblBpeGVscyxcbiAgICBzaG91bGRIaWRlQ2FyZXQgPSB0cnVlLFxuICAgIHNob3VsZEhpZGVWYXVsdE5hbWUgPSB0cnVlLFxuICAgIHRyYW5zcG9ydDogdHJhbnNwb3J0T3ZlcnJpZGUsXG4gICAgdmF1bHRQYXRoLFxuICAgIHdpZHRoSW5QaXhlbHNcbiAgfSA9IG9wdGlvbnMgPz8ge307XG5cbiAgY29uc3QgY3dkID0gdmF1bHRQYXRoID8/IGdldFZhdWx0UGF0aCgpID8/IHByb2Nlc3MuY3dkKCk7XG4gIGNvbnN0IHRyYW5zcG9ydCA9IHRyYW5zcG9ydE92ZXJyaWRlID8/IGF3YWl0IGdldE9yQ3JlYXRlVHJhbnNwb3J0KGdldFRyYW5zcG9ydE9wdGlvbnMoKSk7XG5cbiAgaWYgKCF0cmFuc3BvcnQuY2FwdHVyZVNjcmVlbnNob3QpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2NhcHR1cmVPYnNpZGlhblNjcmVlbnNob3Q6IHRoZSBhY3RpdmUgdHJhbnNwb3J0IGNhbm5vdCBjYXB0dXJlIHNjcmVlbnNob3RzLicpO1xuICB9XG5cbiAgaWYgKHNob3VsZEhpZGVWYXVsdE5hbWUpIHtcbiAgICBhd2FpdCBoaWRlVmF1bHROYW1lKHtcbiAgICAgIHRyYW5zcG9ydCxcbiAgICAgIHZhdWx0UGF0aDogY3dkXG4gICAgfSk7XG4gIH1cblxuICBjb25zdCBoaWRkZW5DYXJldCA9IHNob3VsZEhpZGVDYXJldFxuICAgID8gYXdhaXQgaGlkZUNhcmV0KHtcbiAgICAgIHRyYW5zcG9ydCxcbiAgICAgIHZhdWx0UGF0aDogY3dkXG4gICAgfSlcbiAgICA6IHVuZGVmaW5lZDtcblxuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCB0cmFuc3BvcnQuY2FwdHVyZVNjcmVlbnNob3Qobm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzPENhcHR1cmVTY3JlZW5zaG90UGFyYW1zPih7XG4gICAgICBjd2QsXG4gICAgICBoZWlnaHRJblBpeGVscyxcbiAgICAgIHdpZHRoSW5QaXhlbHNcbiAgICB9KSk7XG4gIH0gZmluYWxseSB7XG4gICAgYXdhaXQgaGlkZGVuQ2FyZXQ/LnJlc3RvcmUoKTtcbiAgfVxufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFzQkEsMEJBQW9CO0FBS3BCLDhCQUdPO0FBQ1Asd0JBQTBCO0FBQzFCLDZCQUE4QjtBQUM5QiwyQ0FBNEM7QUFDNUMsK0JBQXFDO0FBK0VyQyxlQUFzQiwwQkFBMEIsU0FBaUU7QUFDL0csUUFBTTtBQUFBLElBQ0o7QUFBQSxJQUNBLGtCQUFrQjtBQUFBLElBQ2xCLHNCQUFzQjtBQUFBLElBQ3RCLFdBQVc7QUFBQSxJQUNYO0FBQUEsSUFDQTtBQUFBLEVBQ0YsSUFBSSxXQUFXLENBQUM7QUFFaEIsUUFBTSxNQUFNLGlCQUFhLHNDQUFhLEtBQUssb0JBQUFBLFFBQVEsSUFBSTtBQUN2RCxRQUFNLFlBQVkscUJBQXFCLFVBQU0sbURBQXFCLDZDQUFvQixDQUFDO0FBRXZGLE1BQUksQ0FBQyxVQUFVLG1CQUFtQjtBQUNoQyxVQUFNLElBQUksTUFBTSw2RUFBNkU7QUFBQSxFQUMvRjtBQUVBLE1BQUkscUJBQXFCO0FBQ3ZCLGNBQU0sc0NBQWM7QUFBQSxNQUNsQjtBQUFBLE1BQ0EsV0FBVztBQUFBLElBQ2IsQ0FBQztBQUFBLEVBQ0g7QUFFQSxRQUFNLGNBQWMsa0JBQ2hCLFVBQU0sNkJBQVU7QUFBQSxJQUNoQjtBQUFBLElBQ0EsV0FBVztBQUFBLEVBQ2IsQ0FBQyxJQUNDO0FBRUosTUFBSTtBQUNGLFdBQU8sTUFBTSxVQUFVLHNCQUFrQixrRUFBcUQ7QUFBQSxNQUM1RjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsSUFDRixDQUFDLENBQUM7QUFBQSxFQUNKLFVBQUU7QUFDQSxVQUFNLGFBQWEsUUFBUTtBQUFBLEVBQzdCO0FBQ0Y7IiwKICAibmFtZXMiOiBbInByb2Nlc3MiXQp9Cg==
@@ -13,7 +13,9 @@
13
13
  *
14
14
  * It also makes the frame REPRODUCIBLE before taking it, by hiding the vault's
15
15
  * name — see `hide-vault-name.ts` for why a `temp-vault-<random>` bleeds
16
- * through the caption band and rewrites a checked-in PNG on every run.
16
+ * through the caption band and rewrites a checked-in PNG on every run — and by
17
+ * hiding the focused element's blinking caret for the length of the capture —
18
+ * see `hide-caret.ts` for why that is a transparent caret and not a blur.
17
19
  */
18
20
  import type { ObsidianTransport } from './transport.cjs';
19
21
  /**
@@ -29,6 +31,19 @@ export interface CaptureObsidianScreenshotOptions {
29
31
  * geometry.
30
32
  */
31
33
  readonly heightInPixels?: number;
34
+ /**
35
+ * Whether to hide the focused element's caret while capturing, so the frame
36
+ * does not depend on which phase of its blink the capture caught.
37
+ *
38
+ * The caret is made transparent, not blurred: the focus, its ring and
39
+ * anything open because of it — a suggester under an input — all stay as the
40
+ * test built them, and the caret is put back once the frame is taken. Turn it
41
+ * off only to photograph the caret itself, and expect such a frame to differ
42
+ * between runs.
43
+ *
44
+ * @default `true`
45
+ */
46
+ readonly shouldHideCaret?: boolean;
32
47
  /**
33
48
  * Whether to hide the vault's name before capturing, so the frame does not
34
49
  * depend on the random suffix of the harness's temporary vault.
@@ -65,7 +80,10 @@ export interface CaptureObsidianScreenshotOptions {
65
80
  * The vault's name is hidden first, so two runs of the same suite against two
66
81
  * differently-named temporary vaults produce byte-identical PNGs. Pass
67
82
  * {@link CaptureObsidianScreenshotOptions.shouldHideVaultName} as `false` to
68
- * photograph it.
83
+ * photograph it. The focused element's caret is hidden for the capture too, and
84
+ * restored after it, so a frame with a focused field does not alternate between
85
+ * two blink phases; {@link CaptureObsidianScreenshotOptions.shouldHideCaret}
86
+ * turns that off.
69
87
  *
70
88
  * @param options - Optional size, transport and vault overrides.
71
89
  * @returns A {@link Promise} that resolves to the raw PNG bytes.
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var field_text_hold_exports = {};
20
+ __export(field_text_hold_exports, {
21
+ holdFieldText: () => holdFieldText
22
+ });
23
+ module.exports = __toCommonJS(field_text_hold_exports);
24
+ const DEFAULT_CONFIRMATION_READ_COUNT = 3;
25
+ const DEFAULT_INTERVAL_IN_MILLISECONDS = 300;
26
+ const DEFAULT_MAX_WRITE_COUNT = 4;
27
+ async function holdFieldText(params) {
28
+ const confirmationReadCount = params.confirmationReadCount ?? DEFAULT_CONFIRMATION_READ_COUNT;
29
+ const intervalInMilliseconds = params.intervalInMilliseconds ?? DEFAULT_INTERVAL_IN_MILLISECONDS;
30
+ const maxWriteCount = params.maxWriteCount ?? DEFAULT_MAX_WRITE_COUNT;
31
+ const readTexts = [];
32
+ await params.writeText(params.expectedText);
33
+ let writeCount = 1;
34
+ let agreeingReadCount = 0;
35
+ while (agreeingReadCount < confirmationReadCount) {
36
+ await params.sleep(intervalInMilliseconds);
37
+ const text = await params.readText();
38
+ readTexts.push(text);
39
+ if (text === params.expectedText) {
40
+ agreeingReadCount++;
41
+ continue;
42
+ }
43
+ if (text === null || writeCount >= maxWriteCount) {
44
+ return { isHeld: false, readTexts, writeCount };
45
+ }
46
+ await params.writeText(params.expectedText);
47
+ writeCount++;
48
+ agreeingReadCount = 0;
49
+ }
50
+ return { isHeld: true, readTexts, writeCount };
51
+ }
52
+ // Annotate the CommonJS export names for ESM import in node:
53
+ 0 && (module.exports = {
54
+ holdFieldText
55
+ });
56
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2ZpZWxkLXRleHQtaG9sZC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEhvbGRzIGEgc2NyaXB0ZWQgd3JpdGUgdG8gYSBmaWVsZCB1bnRpbCBpdCBzdGF5cyBwdXQuXG4gKlxuICogYHJhaXNlU29mdEtleWJvYXJkYCBlbXB0aWVzIGl0cyBmaWVsZCBmb3IgdGhlIHRvdWNoIHRoYXQgcmFpc2VzIHRoZSBJTUUgYW5kIHdyaXRlcyB0aGUgdGV4dCBiYWNrIGFmdGVyd2FyZHMuXG4gKiBUaGUgd3JpdGUgbGFuZHMsIGFuZCB0aGVuIGFib3V0IG9uZSB0aW1lIGluIGZpdmUgaXQgaXMgdW5kb25lOiB0aGUgdG91Y2ggc3RhcnRlZCB0aGUgSU1FJ3MgaW5wdXQgY29ubmVjdGlvblxuICogZnJvbSB0aGUgRU1QVFkgZmllbGQsIGFuZCBhIGxhdGVyIHVwZGF0ZSBmcm9tIHRoYXQgY29ubmVjdGlvbiB3cml0ZXMgdGhlIGVtcHR5IHN0YXRlIGJhY2sgb3ZlciB0aGUgaGFybmVzcydzXG4gKiB3cml0ZS4gTm90aGluZyByZXBvcnRzIGl0IFx1MjAxNCB0aGUgY2FwdHVyZSB0YWtlbiBzdHJhaWdodCBhZnRlciBzaW1wbHkgc2hvd3MgdGhlIHBsYWNlaG9sZGVyIFx1MjAxNCBzbyB0aGUgd3JpdGUgaXNcbiAqIG5vdCBkb25lIHVudGlsIHJlcGVhdGVkIHJlYWRzIGFncmVlIGl0IGhlbGQuXG4gKlxuICogVGhlIGxvb3AgaXMgcHVyZSwgd2l0aCB0aGUgcmVhZCwgdGhlIHdyaXRlIGFuZCB0aGUgc2xlZXAgaW5qZWN0ZWQsIHRoZSBzYW1lIHNwbGl0IGFzIGBwb2xsLXVudGlsYDogdGhlXG4gKiBvcmNoZXN0cmF0aW9uIGlzIHVuaXQtdGVzdGVkIGhlcmUsIGFuZCBvbmx5IGl0cyB3aXJpbmcgdG8gYSBsaXZlIHJlbmRlcmVyIHNpdHMgaW4gdGhlIGludGVncmF0aW9uLW9ubHlcbiAqIGBzb2Z0LWtleWJvYXJkYC5cbiAqL1xuXG4vKipcbiAqIFBhcmFtZXRlcnMgZm9yIHtAbGluayBob2xkRmllbGRUZXh0fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIb2xkRmllbGRUZXh0UGFyYW1zIHtcbiAgLyoqXG4gICAqIEhvdyBtYW55IGNvbnNlY3V0aXZlIHJlYWRzIG11c3Qgc2hvdyB0aGUgdGV4dCBiZWZvcmUgaXQgY291bnRzIGFzIGhlbGQuXG4gICAqXG4gICAqIEBkZWZhdWx0IDNcbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpcm1hdGlvblJlYWRDb3VudD86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHRleHQgdGhlIGZpZWxkIG11c3QgZW5kIHVwIGhvbGRpbmcuXG4gICAqL1xuICByZWFkb25seSBleHBlY3RlZFRleHQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHdhaXQgYmVmb3JlIGVhY2ggcmVhZC5cbiAgICpcbiAgICogQGRlZmF1bHQgMzAwXG4gICAqL1xuICByZWFkb25seSBpbnRlcnZhbEluTWlsbGlzZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBIb3cgbWFueSB3cml0ZXMgYXJlIG1hZGUgaW4gYWxsLCB0aGUgZmlyc3QgaW5jbHVkZWQsIGJlZm9yZSB0aGUgdGV4dCBpcyByZXBvcnRlZCBsb3N0LlxuICAgKlxuICAgKiBAZGVmYXVsdCA0XG4gICAqL1xuICByZWFkb25seSBtYXhXcml0ZUNvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBSZWFkcyB3aGF0IHRoZSBmaWVsZCBob2xkcyBub3csIG9yIGBudWxsYCB3aGVuIHRoZSBmaWVsZCBpcyBnb25lLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZFRleHQ6ICh0aGlzOiB2b2lkKSA9PiBQcm9taXNlPG51bGwgfCBzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBTbGVlcHMgZm9yIHRoZSBnaXZlbiBudW1iZXIgb2YgbWlsbGlzZWNvbmRzLlxuICAgKi9cbiAgcmVhZG9ubHkgc2xlZXA6ICh0aGlzOiB2b2lkLCBtaWxsaXNlY29uZHM6IG51bWJlcikgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKipcbiAgICogV3JpdGVzIHRoZSB0ZXh0IGludG8gdGhlIGZpZWxkLlxuICAgKi9cbiAgcmVhZG9ubHkgd3JpdGVUZXh0OiAodGhpczogdm9pZCwgdGV4dDogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFdoYXQge0BsaW5rIGhvbGRGaWVsZFRleHR9IGZvdW5kLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEhvbGRGaWVsZFRleHRSZXN1bHQge1xuICAvKipcbiAgICogV2hldGhlciB0aGUgdGV4dCBoZWxkIGZvciB0aGUgd2hvbGUgY29uZmlybWF0aW9uIHdpbmRvdy5cbiAgICovXG4gIHJlYWRvbmx5IGlzSGVsZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogRXZlcnkgcmVhZCwgaW4gb3JkZXIgXHUyMDE0IHRoZSBldmlkZW5jZSBhIGZhaWx1cmUgcmVwb3J0cy5cbiAgICovXG4gIHJlYWRvbmx5IHJlYWRUZXh0czogcmVhZG9ubHkgKG51bGwgfCBzdHJpbmcpW107XG5cbiAgLyoqXG4gICAqIEhvdyBtYW55IHdyaXRlcyB3ZXJlIG1hZGUsIHRoZSBmaXJzdCBpbmNsdWRlZC4gQWJvdmUgb25lIG1lYW5zIHRoZSB0ZXh0IHdhcyBsb3N0IGFuZCB3cml0dGVuIGFnYWluLlxuICAgKi9cbiAgcmVhZG9ubHkgd3JpdGVDb3VudDogbnVtYmVyO1xufVxuXG5jb25zdCBERUZBVUxUX0NPTkZJUk1BVElPTl9SRUFEX0NPVU5UID0gMztcbmNvbnN0IERFRkFVTFRfSU5URVJWQUxfSU5fTUlMTElTRUNPTkRTID0gMzAwO1xuY29uc3QgREVGQVVMVF9NQVhfV1JJVEVfQ09VTlQgPSA0O1xuXG4vKipcbiAqIFdyaXRlcyB0aGUgdGV4dCwgdGhlbiByZS1yZWFkcyB0aGUgZmllbGQgdW50aWwgaXQgaGFzIHNob3duIHRoZSB0ZXh0IG9uIGVub3VnaCBjb25zZWN1dGl2ZSByZWFkcywgd3JpdGluZyBpdFxuICogYWdhaW4gZWFjaCB0aW1lIGEgcmVhZCBzaG93cyBhbnl0aGluZyBlbHNlLlxuICpcbiAqIEEgcmVhZCBvZiBgbnVsbGAgZW5kcyB0aGUgaG9sZCBhdCBvbmNlLCBhcyBub3QgaGVsZDogdGhlIGZpZWxkIGlzIGdvbmUsIHNvIHRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byB3cml0ZSBpbnRvLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgdGV4dCwgaG93IHRvIHJlYWQgYW5kIHdyaXRlIHRoZSBmaWVsZCwgYW5kIGhvdyBsb25nIGl0IG11c3QgaG9sZC5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gd2hldGhlciB0aGUgdGV4dCBoZWxkLCBldmVyeSByZWFkLCBhbmQgaG93IG1hbnkgd3JpdGVzIGl0IHRvb2suXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBob2xkRmllbGRUZXh0KHBhcmFtczogSG9sZEZpZWxkVGV4dFBhcmFtcyk6IFByb21pc2U8SG9sZEZpZWxkVGV4dFJlc3VsdD4ge1xuICBjb25zdCBjb25maXJtYXRpb25SZWFkQ291bnQgPSBwYXJhbXMuY29uZmlybWF0aW9uUmVhZENvdW50ID8/IERFRkFVTFRfQ09ORklSTUFUSU9OX1JFQURfQ09VTlQ7XG4gIGNvbnN0IGludGVydmFsSW5NaWxsaXNlY29uZHMgPSBwYXJhbXMuaW50ZXJ2YWxJbk1pbGxpc2Vjb25kcyA/PyBERUZBVUxUX0lOVEVSVkFMX0lOX01JTExJU0VDT05EUztcbiAgY29uc3QgbWF4V3JpdGVDb3VudCA9IHBhcmFtcy5tYXhXcml0ZUNvdW50ID8/IERFRkFVTFRfTUFYX1dSSVRFX0NPVU5UO1xuICBjb25zdCByZWFkVGV4dHM6IChudWxsIHwgc3RyaW5nKVtdID0gW107XG5cbiAgYXdhaXQgcGFyYW1zLndyaXRlVGV4dChwYXJhbXMuZXhwZWN0ZWRUZXh0KTtcbiAgbGV0IHdyaXRlQ291bnQgPSAxO1xuICBsZXQgYWdyZWVpbmdSZWFkQ291bnQgPSAwO1xuXG4gIHdoaWxlIChhZ3JlZWluZ1JlYWRDb3VudCA8IGNvbmZpcm1hdGlvblJlYWRDb3VudCkge1xuICAgIGF3YWl0IHBhcmFtcy5zbGVlcChpbnRlcnZhbEluTWlsbGlzZWNvbmRzKTtcbiAgICBjb25zdCB0ZXh0ID0gYXdhaXQgcGFyYW1zLnJlYWRUZXh0KCk7XG4gICAgcmVhZFRleHRzLnB1c2godGV4dCk7XG5cbiAgICBpZiAodGV4dCA9PT0gcGFyYW1zLmV4cGVjdGVkVGV4dCkge1xuICAgICAgYWdyZWVpbmdSZWFkQ291bnQrKztcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGlmICh0ZXh0ID09PSBudWxsIHx8IHdyaXRlQ291bnQgPj0gbWF4V3JpdGVDb3VudCkge1xuICAgICAgcmV0dXJuIHsgaXNIZWxkOiBmYWxzZSwgcmVhZFRleHRzLCB3cml0ZUNvdW50IH07XG4gICAgfVxuXG4gICAgYXdhaXQgcGFyYW1zLndyaXRlVGV4dChwYXJhbXMuZXhwZWN0ZWRUZXh0KTtcbiAgICB3cml0ZUNvdW50Kys7XG4gICAgYWdyZWVpbmdSZWFkQ291bnQgPSAwO1xuICB9XG5cbiAgcmV0dXJuIHsgaXNIZWxkOiB0cnVlLCByZWFkVGV4dHMsIHdyaXRlQ291bnQgfTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFrRkEsTUFBTSxrQ0FBa0M7QUFDeEMsTUFBTSxtQ0FBbUM7QUFDekMsTUFBTSwwQkFBMEI7QUFXaEMsZUFBc0IsY0FBYyxRQUEyRDtBQUM3RixRQUFNLHdCQUF3QixPQUFPLHlCQUF5QjtBQUM5RCxRQUFNLHlCQUF5QixPQUFPLDBCQUEwQjtBQUNoRSxRQUFNLGdCQUFnQixPQUFPLGlCQUFpQjtBQUM5QyxRQUFNLFlBQStCLENBQUM7QUFFdEMsUUFBTSxPQUFPLFVBQVUsT0FBTyxZQUFZO0FBQzFDLE1BQUksYUFBYTtBQUNqQixNQUFJLG9CQUFvQjtBQUV4QixTQUFPLG9CQUFvQix1QkFBdUI7QUFDaEQsVUFBTSxPQUFPLE1BQU0sc0JBQXNCO0FBQ3pDLFVBQU0sT0FBTyxNQUFNLE9BQU8sU0FBUztBQUNuQyxjQUFVLEtBQUssSUFBSTtBQUVuQixRQUFJLFNBQVMsT0FBTyxjQUFjO0FBQ2hDO0FBQ0E7QUFBQSxJQUNGO0FBRUEsUUFBSSxTQUFTLFFBQVEsY0FBYyxlQUFlO0FBQ2hELGFBQU8sRUFBRSxRQUFRLE9BQU8sV0FBVyxXQUFXO0FBQUEsSUFDaEQ7QUFFQSxVQUFNLE9BQU8sVUFBVSxPQUFPLFlBQVk7QUFDMUM7QUFDQSx3QkFBb0I7QUFBQSxFQUN0QjtBQUVBLFNBQU8sRUFBRSxRQUFRLE1BQU0sV0FBVyxXQUFXO0FBQy9DOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @file
3
+ *
4
+ * Holds a scripted write to a field until it stays put.
5
+ *
6
+ * `raiseSoftKeyboard` empties its field for the touch that raises the IME and writes the text back afterwards.
7
+ * The write lands, and then about one time in five it is undone: the touch started the IME's input connection
8
+ * from the EMPTY field, and a later update from that connection writes the empty state back over the harness's
9
+ * write. Nothing reports it — the capture taken straight after simply shows the placeholder — so the write is
10
+ * not done until repeated reads agree it held.
11
+ *
12
+ * The loop is pure, with the read, the write and the sleep injected, the same split as `poll-until`: the
13
+ * orchestration is unit-tested here, and only its wiring to a live renderer sits in the integration-only
14
+ * `soft-keyboard`.
15
+ */
16
+ /**
17
+ * Parameters for {@link holdFieldText}.
18
+ */
19
+ export interface HoldFieldTextParams {
20
+ /**
21
+ * How many consecutive reads must show the text before it counts as held.
22
+ *
23
+ * @default 3
24
+ */
25
+ readonly confirmationReadCount?: number;
26
+ /**
27
+ * The text the field must end up holding.
28
+ */
29
+ readonly expectedText: string;
30
+ /**
31
+ * The wait before each read.
32
+ *
33
+ * @default 300
34
+ */
35
+ readonly intervalInMilliseconds?: number;
36
+ /**
37
+ * How many writes are made in all, the first included, before the text is reported lost.
38
+ *
39
+ * @default 4
40
+ */
41
+ readonly maxWriteCount?: number;
42
+ /**
43
+ * Reads what the field holds now, or `null` when the field is gone.
44
+ */
45
+ readonly readText: (this: void) => Promise<null | string>;
46
+ /**
47
+ * Sleeps for the given number of milliseconds.
48
+ */
49
+ readonly sleep: (this: void, milliseconds: number) => Promise<void>;
50
+ /**
51
+ * Writes the text into the field.
52
+ */
53
+ readonly writeText: (this: void, text: string) => Promise<void>;
54
+ }
55
+ /**
56
+ * What {@link holdFieldText} found.
57
+ */
58
+ export interface HoldFieldTextResult {
59
+ /**
60
+ * Whether the text held for the whole confirmation window.
61
+ */
62
+ readonly isHeld: boolean;
63
+ /**
64
+ * Every read, in order — the evidence a failure reports.
65
+ */
66
+ readonly readTexts: readonly (null | string)[];
67
+ /**
68
+ * How many writes were made, the first included. Above one means the text was lost and written again.
69
+ */
70
+ readonly writeCount: number;
71
+ }
72
+ /**
73
+ * Writes the text, then re-reads the field until it has shown the text on enough consecutive reads, writing it
74
+ * again each time a read shows anything else.
75
+ *
76
+ * A read of `null` ends the hold at once, as not held: the field is gone, so there is nothing left to write into.
77
+ *
78
+ * @param params - The text, how to read and write the field, and how long it must hold.
79
+ * @returns A {@link Promise} that resolves to whether the text held, every read, and how many writes it took.
80
+ */
81
+ export declare function holdFieldText(params: HoldFieldTextParams): Promise<HoldFieldTextResult>;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var hide_caret_exports = {};
20
+ __export(hide_caret_exports, {
21
+ hideCaret: () => hideCaret
22
+ });
23
+ module.exports = __toCommonJS(hide_caret_exports);
24
+ var import_eval_in_obsidian = require("./eval-in-obsidian.cjs");
25
+ var import_normalize_optional_properties = require("./normalize-optional-properties.cjs");
26
+ async function hideCaret(options) {
27
+ const { transport, vaultPath } = options ?? {};
28
+ const isHidden = await (0, import_eval_in_obsidian.evalInObsidian)((0, import_normalize_optional_properties.normalizeOptionalProperties)({
29
+ callback() {
30
+ let activeEl = document.activeElement;
31
+ while (activeEl?.shadowRoot?.activeElement) {
32
+ activeEl = activeEl.shadowRoot.activeElement;
33
+ }
34
+ if (!activeEl?.instanceOf(HTMLElement) || activeEl === document.body) {
35
+ return false;
36
+ }
37
+ const holder = globalThis;
38
+ const existing = holder.__obsidianIntegrationTestingHiddenCaret;
39
+ if (existing?.el !== activeEl) {
40
+ existing?.el.setCssStyles({ caretColor: existing.previousCaretColor });
41
+ holder.__obsidianIntegrationTestingHiddenCaret = {
42
+ el: activeEl,
43
+ previousCaretColor: activeEl.style.caretColor
44
+ };
45
+ }
46
+ activeEl.setCssStyles({ caretColor: "transparent" });
47
+ return true;
48
+ },
49
+ transport,
50
+ vaultPath
51
+ }));
52
+ return {
53
+ isHidden,
54
+ async restore() {
55
+ if (!isHidden) {
56
+ return;
57
+ }
58
+ await (0, import_eval_in_obsidian.evalInObsidian)((0, import_normalize_optional_properties.normalizeOptionalProperties)({
59
+ callback() {
60
+ const holder = globalThis;
61
+ const record = holder.__obsidianIntegrationTestingHiddenCaret;
62
+ if (!record) {
63
+ return;
64
+ }
65
+ record.el.setCssStyles({ caretColor: record.previousCaretColor });
66
+ holder.__obsidianIntegrationTestingHiddenCaret = void 0;
67
+ },
68
+ transport,
69
+ vaultPath
70
+ }));
71
+ }
72
+ };
73
+ }
74
+ // Annotate the CommonJS export names for ESM import in node:
75
+ 0 && (module.exports = {
76
+ hideCaret
77
+ });
78
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2hpZGUtY2FyZXQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBIaWRlcyB0aGUgdGV4dCBjYXJldCBvZiB0aGUgZm9jdXNlZCBlbGVtZW50IGZvciB0aGUgbGVuZ3RoIG9mIGEgY2FwdHVyZSwgc29cbiAqIGEgZnJhbWUgZG9lcyBub3QgZGVwZW5kIG9uIHdoaWNoIHBoYXNlIG9mIGl0cyBibGluayB0aGUgY2FwdHVyZSBsYW5kZWQgaW4uXG4gKlxuICogQSBmb2N1c2VkIGA8aW5wdXQ+YCBvciBhIGZvY3VzZWQgZWRpdG9yIGJsaW5rcyBpdHMgY2FyZXQgYWJvdXQgdHdpY2UgYSBzZWNvbmQsXG4gKiBhbmQgYSBjYXB0dXJlIHBob3RvZ3JhcGhzIHdoaWNoZXZlciBwaGFzZSBpdCBoYXBwZW5zIHRvIGNhdGNoLiBUd28gY2FwdHVyZXNcbiAqIG9mIGFuIHVuY2hhbmdlZCB3aW5kb3cgdGhlcmVmb3JlIGFsdGVybmF0ZSBiZXR3ZWVuIHR3byBieXRlIHN0cmVhbXM6IG1lYXN1cmVkXG4gKiBhZ2FpbnN0IE9ic2lkaWFuIDEuMTQgYXQgdGhlIDEyMDB4ODAwIHN0b3JlIHNpemUsIGVpZ2h0IGNhcHR1cmVzIDE3MCBtcyBhcGFydFxuICogZ2F2ZSAyIGRpc3RpbmN0IFBOR3MgZm9yIGEgZm9jdXNlZCBtb2RhbCBpbnB1dCBhbmQgMiBmb3IgYSBmb2N1c2VkIE1hcmtkb3duXG4gKiBlZGl0b3IsIGFuZCBleGFjdGx5IDEgZWFjaCBvbmNlIHRoZSBjYXJldCB3YXMgdHJhbnNwYXJlbnQuXG4gKlxuICogKipgY2FyZXQtY29sb3I6IHRyYW5zcGFyZW50YCwgbm90IGBibHVyKClgKiosIGFuZCB0aGUgZGlmZmVyZW5jZSBpcyBub3RcbiAqIGNvc21ldGljLiBCbHVycmluZyBkb2VzIG1ha2UgdGhlIGJ5dGVzIHN0YWJsZSB0b28sIGJ1dCBpdCBpcyBhIHN0YXRlIGNoYW5nZVxuICogdGhlIGFwcCBvYnNlcnZlczogaW4gdGhlIHNhbWUgcnVuIGFuIG9wZW4gYEFic3RyYWN0SW5wdXRTdWdnZXN0YCBwb3BvdmVyIGNsb3NlZFxuICogdGhlIG1vbWVudCBpdHMgaW5wdXQgbG9zdCBmb2N1cywgc28gYSBibHVyIHdvdWxkIHBob3RvZ3JhcGggYSBkaWZmZXJlbnQgZnJhbWVcbiAqIGZyb20gdGhlIG9uZSB0aGUgdGVzdCBidWlsdC4gSXQgYWxzbyBkcm9wcyB0aGUgZm9jdXMgcmluZywgd2hpY2ggZG9lcyBub3RcbiAqIGJsaW5rIGFuZCBpcyBvZnRlbiBwYXJ0IG9mIHdoYXQgdGhlIGZyYW1lIGlzIHNob3dpbmcuIE9ic2lkaWFuIGRyYXdzIGl0c1xuICogZWRpdG9yIGNhcmV0IG5hdGl2ZWx5ICh0aGUgQ29kZU1pcnJvciBjdXJzb3IgbGF5ZXIgaXMgZW1wdHkpLCBzbyBvbmVcbiAqIGBjYXJldC1jb2xvcmAgY292ZXJzIGlucHV0cyBhbmQgdGhlIGVkaXRvciBhbGlrZS5cbiAqXG4gKiAqKlJlc3RvcmVkIGFmdGVyd2FyZHMqKiwgdW5saWtlIHRoZSB2YXVsdCBuYW1lIGBoaWRlVmF1bHROYW1lYCBoaWRlczogdGhlXG4gKiBmb2N1c2VkIGZpZWxkIGlzIGxpdmUgc3RhdGUgYSB0ZXN0IGdvZXMgb24gdHlwaW5nIGludG8sIGFuZCBhIGNhcmV0IHRoYXRcbiAqIHNpbGVudGx5IHN0YXllZCBpbnZpc2libGUgd291bGQgYmUgYSBzdXJwcmlzZSB3aXRoIG5vIGVycm9yIGF0dGFjaGVkLlxuICpcbiAqIGBjYXB0dXJlT2JzaWRpYW5TY3JlZW5zaG90YCBjYWxscyB0aGlzIGJ5IGRlZmF1bHQuIEl0IGlzIGV4cG9ydGVkIGZvciB0aGVcbiAqIGNhcHR1cmVzIHRoYXQgY2Fubm90OiBgY2FwdHVyZURldmljZVNjcmVlbnNob3RgIHJlYWRzIHRoZSBkZXZpY2UgZnJhbWVidWZmZXJcbiAqIG92ZXIgYGFkYmAgYW5kIGhhcyBubyBwYWdlIGNoYW5uZWwsIGFuZCBpdHMgdHlwaWNhbCBmcmFtZSBcdTIwMTQgYSBmaWVsZCB3aXRoIHRoZVxuICogc29mdCBrZXlib2FyZCB1bmRlciBpdCBcdTIwMTQgaXMgZXhhY3RseSB0aGUgZnJhbWUgd2hlcmUgYmx1cnJpbmcgaXMgd3JvbmcsIHNpbmNlXG4gKiBibHVycmluZyB3b3VsZCB0YWtlIHRoZSBrZXlib2FyZCBkb3duIHdpdGggdGhlIGZvY3VzLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBJbnRlZ3JhdGlvbi10aW1lIGNvZGUgKGRyaXZlcyBhIGxpdmUgT2JzaWRpYW4pIGNvdmVyZWQgYnkgaW50ZWdyYXRpb24gdGVzdHMsIG5vdCB1bml0IHRlc3RzLiAqL1xuXG5pbXBvcnQgdHlwZSB7IEV2YWxJbk9ic2lkaWFuUGFyYW1zIH0gZnJvbSAnLi9ldmFsLWluLW9ic2lkaWFuLmNqcyc7XG5pbXBvcnQgdHlwZSB7IE9ic2lkaWFuVHJhbnNwb3J0IH0gZnJvbSAnLi90cmFuc3BvcnQuY2pzJztcblxuaW1wb3J0IHsgZXZhbEluT2JzaWRpYW4gfSBmcm9tICcuL2V2YWwtaW4tb2JzaWRpYW4uY2pzJztcbmltcG9ydCB7IG5vcm1hbGl6ZU9wdGlvbmFsUHJvcGVydGllcyB9IGZyb20gJy4vbm9ybWFsaXplLW9wdGlvbmFsLXByb3BlcnRpZXMuY2pzJztcblxuLyoqXG4gKiBXaGF0IHtAbGluayBoaWRlQ2FyZXR9IHJldHVybnM6IHdoZXRoZXIgYSBjYXJldCB3YXMgaGlkZGVuLCBhbmQgaG93IHRvIHB1dCBpdFxuICogYmFjay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIaWRkZW5DYXJldCB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIGFuIGVsZW1lbnQgaGVsZCBmb2N1cywgYW5kIHNvIGhhZCBhIGNhcmV0IHRvIGhpZGUuIGBmYWxzZWAgaXMgYVxuICAgKiBsZWdpdGltYXRlIGFuc3dlciBcdTIwMTQgYSBmcmFtZSB3aXRoIG5vdGhpbmcgZm9jdXNlZCBoYXMgbm8gY2FyZXQgXHUyMDE0IGFuZFxuICAgKiB7QGxpbmsgcmVzdG9yZX0gaXMgdGhlbiBhIG5vLW9wLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNIaWRkZW46IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFB1dHMgdGhlIGZvY3VzZWQgZWxlbWVudCdzIG93biBpbmxpbmUgYGNhcmV0LWNvbG9yYCBiYWNrLCBleGFjdGx5IGFzIGl0XG4gICAqIHdhcyBcdTIwMTQgcmVtb3ZlZCB3aGVuIGl0IGhhZCBub25lLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIG9uY2UgdGhlIGNhcmV0IGlzIHJlc3RvcmVkLlxuICAgKi9cbiAgcmVzdG9yZTogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciB7QGxpbmsgaGlkZUNhcmV0fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIaWRlQ2FyZXRPcHRpb25zIHtcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHRoZSB0cmFuc3BvcnQuIFdoZW4gb21pdHRlZCwgdGhlIHRyYW5zcG9ydCB0aGUgY3VycmVudCB0ZXN0XG4gICAqIGNvbnRleHQgaXMgZHJpdmluZyBpcyB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdHJhbnNwb3J0PzogT2JzaWRpYW5UcmFuc3BvcnQ7XG5cbiAgLyoqXG4gICAqIFRoZSB2YXVsdCB3aG9zZSBPYnNpZGlhbiB3aW5kb3cgdG8gaGlkZSB0aGUgY2FyZXQgaW4uIFdoZW4gb21pdHRlZCwgdGhlXG4gICAqIGN1cnJlbnQgdGVzdCBjb250ZXh0J3MgdmF1bHQgaXMgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHZhdWx0UGF0aD86IHN0cmluZztcbn1cblxuLy8gQSBgd2luZG93YCBwcm9wZXJ0eSByYXRoZXIgdGhhbiBhIGNsb3N1cmUgdmFyaWFibGU6IHRoZSBoaWRlIGFuZCB0aGUgcmVzdG9yZVxuLy8gYXJlIHR3byBzZXBhcmF0ZSBldmFsdWF0aW9ucywgYW5kIHRoZSBlbGVtZW50IGlzIG5vdCBzZXJpYWxpemFibGUuIFRoZSBrZXkgaXNcbi8vIHNwZWxsZWQgb3V0IGluIHRoZSBob2xkZXIgcmF0aGVyIHRoYW4gc2hhcmVkIHRocm91Z2ggYSBjb25zdGFudCwgYmVjYXVzZSBhXG4vLyBjbG9zdXJlIGlzIHNlcmlhbGl6ZWQgYW5kIGNhbm5vdCByZWFjaCBtb2R1bGUgc2NvcGUuXG4vL1xuLy8gS2VwdCBsb2NhbCByYXRoZXIgdGhhbiBkZWNsYXJlZCBnbG9iYWxseSwgbGlrZSBldmVyeSBvdGhlciBob2xkZXIgb2YgYVxuLy8gaGFybmVzcyBgd2luZG93YCBwcm9wZXJ0eSwgc28gaXQgbmV2ZXIgbGVha3MgaW50byBjb25zdW1lciB0eXBlcy5cbmludGVyZmFjZSBIaWRkZW5DYXJldEhvbGRlciB7XG4gIF9fb2JzaWRpYW5JbnRlZ3JhdGlvblRlc3RpbmdIaWRkZW5DYXJldD86IEhpZGRlbkNhcmV0UmVjb3JkIHwgdW5kZWZpbmVkO1xufVxuXG5pbnRlcmZhY2UgSGlkZGVuQ2FyZXRSZWNvcmQge1xuICByZWFkb25seSBlbDogSFRNTEVsZW1lbnQ7XG4gIHJlYWRvbmx5IHByZXZpb3VzQ2FyZXRDb2xvcjogc3RyaW5nO1xufVxuXG4vKipcbiAqIE1ha2VzIHRoZSBjYXJldCBvZiB0aGUgZm9jdXNlZCBlbGVtZW50IHRyYW5zcGFyZW50LCBsZWF2aW5nIHRoZSBmb2N1cyBpdHNlbGZcbiAqIGFsb25lLlxuICpcbiAqIFRoZSBlbGVtZW50IGlzIGZvdW5kIHRocm91Z2ggbmVzdGVkIHNoYWRvdyByb290cywgc2luY2VcbiAqIGBkb2N1bWVudC5hY3RpdmVFbGVtZW50YCBzdG9wcyBhdCBhIHNoYWRvdyBob3N0IGFuZCB0aGUgY2FyZXQgYmVsb25ncyB0byB0aGVcbiAqIGVsZW1lbnQgaW5zaWRlIGl0LiBSZS1hcHBseWluZyBiZWZvcmUgYSByZXN0b3JlIGtlZXBzIHRoZSBPUklHSU5BTCB2YWx1ZSwgc29cbiAqIHR3byBoaWRlcyBhbmQgb25lIHJlc3RvcmUgc3RpbGwgbGVhdmUgdGhlIGVsZW1lbnQgYXMgaXQgd2FzIGZvdW5kOyBhIGhpZGUgb25cbiAqIGEgZGlmZmVyZW50IGVsZW1lbnQgZmlyc3QgcmVzdG9yZXMgdGhlIG9uZSBhbiB1bnJlc3RvcmVkIGhpZGUgbGVmdCBiZWhpbmQuXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBUcmFuc3BvcnQgYW5kIHZhdWx0IG92ZXJyaWRlcy5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gdGhlIHtAbGluayBIaWRkZW5DYXJldH0uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoaWRlQ2FyZXQob3B0aW9ucz86IEhpZGVDYXJldE9wdGlvbnMpOiBQcm9taXNlPEhpZGRlbkNhcmV0PiB7XG4gIGNvbnN0IHsgdHJhbnNwb3J0LCB2YXVsdFBhdGggfSA9IG9wdGlvbnMgPz8ge307XG5cbiAgY29uc3QgaXNIaWRkZW4gPSBhd2FpdCBldmFsSW5PYnNpZGlhbihub3JtYWxpemVPcHRpb25hbFByb3BlcnRpZXM8RXZhbEluT2JzaWRpYW5QYXJhbXM8UmVjb3JkPHN0cmluZywgbmV2ZXI+LCBib29sZWFuPj4oe1xuICAgIGNhbGxiYWNrKCk6IGJvb2xlYW4ge1xuICAgICAgbGV0IGFjdGl2ZUVsID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgIHdoaWxlIChhY3RpdmVFbD8uc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudCkge1xuICAgICAgICBhY3RpdmVFbCA9IGFjdGl2ZUVsLnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudDtcbiAgICAgIH1cblxuICAgICAgaWYgKCFhY3RpdmVFbD8uaW5zdGFuY2VPZihIVE1MRWxlbWVudCkgfHwgYWN0aXZlRWwgPT09IGRvY3VtZW50LmJvZHkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1zeW50YXggLS0gQXBwcm92ZWQgZG91YmxlIGNhc3Q6IHRoZSBoaWRkZW4tY2FyZXQgcmVjb3JkIGlzIG91ciBpbnRlcm5hbCBXaW5kb3cgYXVnbWVudGF0aW9uLCBpbnRlbnRpb25hbGx5IGtlcHQgbG9jYWwgKG5vdCBkZWNsYXJlZCBnbG9iYWxseSkgdG8gYXZvaWQgbGVha2luZyBpbnRvIGNvbnN1bWVyIHR5cGVzLlxuICAgICAgY29uc3QgaG9sZGVyID0gZ2xvYmFsVGhpcyBhcyB1bmtub3duIGFzIEhpZGRlbkNhcmV0SG9sZGVyO1xuICAgICAgY29uc3QgZXhpc3RpbmcgPSBob2xkZXIuX19vYnNpZGlhbkludGVncmF0aW9uVGVzdGluZ0hpZGRlbkNhcmV0O1xuICAgICAgaWYgKGV4aXN0aW5nPy5lbCAhPT0gYWN0aXZlRWwpIHtcbiAgICAgICAgLy8gQSBoaWRlIHRoYXQgd2FzIG5ldmVyIHJlc3RvcmVkLCBvbiBhbiBlbGVtZW50IHRoYXQgaGFzIHNpbmNlIGxvc3RcbiAgICAgICAgLy8gZm9jdXM6IHB1dCB0aGF0IG9uZSBiYWNrIHJhdGhlciB0aGFuIG9ycGhhbiBpdCBpbnZpc2libGUuXG4gICAgICAgIGV4aXN0aW5nPy5lbC5zZXRDc3NTdHlsZXMoeyBjYXJldENvbG9yOiBleGlzdGluZy5wcmV2aW91c0NhcmV0Q29sb3IgfSk7XG4gICAgICAgIGhvbGRlci5fX29ic2lkaWFuSW50ZWdyYXRpb25UZXN0aW5nSGlkZGVuQ2FyZXQgPSB7XG4gICAgICAgICAgZWw6IGFjdGl2ZUVsLFxuICAgICAgICAgIHByZXZpb3VzQ2FyZXRDb2xvcjogYWN0aXZlRWwuc3R5bGUuY2FyZXRDb2xvclxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBhY3RpdmVFbC5zZXRDc3NTdHlsZXMoeyBjYXJldENvbG9yOiAndHJhbnNwYXJlbnQnIH0pO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcbiAgICB0cmFuc3BvcnQsXG4gICAgdmF1bHRQYXRoXG4gIH0pKTtcblxuICByZXR1cm4ge1xuICAgIGlzSGlkZGVuLFxuICAgIGFzeW5jIHJlc3RvcmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICBpZiAoIWlzSGlkZGVuKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgZXZhbEluT2JzaWRpYW4obm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzPEV2YWxJbk9ic2lkaWFuUGFyYW1zPFJlY29yZDxzdHJpbmcsIG5ldmVyPiwgdm9pZD4+KHtcbiAgICAgICAgY2FsbGJhY2soKTogdm9pZCB7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlc3RyaWN0ZWQtc3ludGF4IC0tIEFwcHJvdmVkIGRvdWJsZSBjYXN0OiB0aGUgaGlkZGVuLWNhcmV0IHJlY29yZCBpcyBvdXIgaW50ZXJuYWwgV2luZG93IGF1Z21lbnRhdGlvbiwgaW50ZW50aW9uYWxseSBrZXB0IGxvY2FsIChub3QgZGVjbGFyZWQgZ2xvYmFsbHkpIHRvIGF2b2lkIGxlYWtpbmcgaW50byBjb25zdW1lciB0eXBlcy5cbiAgICAgICAgICBjb25zdCBob2xkZXIgPSBnbG9iYWxUaGlzIGFzIHVua25vd24gYXMgSGlkZGVuQ2FyZXRIb2xkZXI7XG4gICAgICAgICAgY29uc3QgcmVjb3JkID0gaG9sZGVyLl9fb2JzaWRpYW5JbnRlZ3JhdGlvblRlc3RpbmdIaWRkZW5DYXJldDtcbiAgICAgICAgICBpZiAoIXJlY29yZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJlY29yZC5lbC5zZXRDc3NTdHlsZXMoeyBjYXJldENvbG9yOiByZWNvcmQucHJldmlvdXNDYXJldENvbG9yIH0pO1xuICAgICAgICAgIGhvbGRlci5fX29ic2lkaWFuSW50ZWdyYXRpb25UZXN0aW5nSGlkZGVuQ2FyZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYW5zcG9ydCxcbiAgICAgICAgdmF1bHRQYXRoXG4gICAgICB9KSk7XG4gICAgfVxuICB9O1xufVxuXG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQXNDQSw4QkFBK0I7QUFDL0IsMkNBQTRDO0FBcUU1QyxlQUFzQixVQUFVLFNBQWtEO0FBQ2hGLFFBQU0sRUFBRSxXQUFXLFVBQVUsSUFBSSxXQUFXLENBQUM7QUFFN0MsUUFBTSxXQUFXLFVBQU0sNENBQWUsa0VBQWtGO0FBQUEsSUFDdEgsV0FBb0I7QUFDbEIsVUFBSSxXQUFXLFNBQVM7QUFDeEIsYUFBTyxVQUFVLFlBQVksZUFBZTtBQUMxQyxtQkFBVyxTQUFTLFdBQVc7QUFBQSxNQUNqQztBQUVBLFVBQUksQ0FBQyxVQUFVLFdBQVcsV0FBVyxLQUFLLGFBQWEsU0FBUyxNQUFNO0FBQ3BFLGVBQU87QUFBQSxNQUNUO0FBR0EsWUFBTSxTQUFTO0FBQ2YsWUFBTSxXQUFXLE9BQU87QUFDeEIsVUFBSSxVQUFVLE9BQU8sVUFBVTtBQUc3QixrQkFBVSxHQUFHLGFBQWEsRUFBRSxZQUFZLFNBQVMsbUJBQW1CLENBQUM7QUFDckUsZUFBTywwQ0FBMEM7QUFBQSxVQUMvQyxJQUFJO0FBQUEsVUFDSixvQkFBb0IsU0FBUyxNQUFNO0FBQUEsUUFDckM7QUFBQSxNQUNGO0FBRUEsZUFBUyxhQUFhLEVBQUUsWUFBWSxjQUFjLENBQUM7QUFDbkQsYUFBTztBQUFBLElBQ1Q7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLEVBQ0YsQ0FBQyxDQUFDO0FBRUYsU0FBTztBQUFBLElBQ0w7QUFBQSxJQUNBLE1BQU0sVUFBeUI7QUFDN0IsVUFBSSxDQUFDLFVBQVU7QUFDYjtBQUFBLE1BQ0Y7QUFFQSxnQkFBTSw0Q0FBZSxrRUFBK0U7QUFBQSxRQUNsRyxXQUFpQjtBQUVmLGdCQUFNLFNBQVM7QUFDZixnQkFBTSxTQUFTLE9BQU87QUFDdEIsY0FBSSxDQUFDLFFBQVE7QUFDWDtBQUFBLFVBQ0Y7QUFFQSxpQkFBTyxHQUFHLGFBQWEsRUFBRSxZQUFZLE9BQU8sbUJBQW1CLENBQUM7QUFDaEUsaUJBQU8sMENBQTBDO0FBQUEsUUFDbkQ7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLE1BQ0YsQ0FBQyxDQUFDO0FBQUEsSUFDSjtBQUFBLEVBQ0Y7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @file
3
+ *
4
+ * Hides the text caret of the focused element for the length of a capture, so
5
+ * a frame does not depend on which phase of its blink the capture landed in.
6
+ *
7
+ * A focused `<input>` or a focused editor blinks its caret about twice a second,
8
+ * and a capture photographs whichever phase it happens to catch. Two captures
9
+ * of an unchanged window therefore alternate between two byte streams: measured
10
+ * against Obsidian 1.14 at the 1200x800 store size, eight captures 170 ms apart
11
+ * gave 2 distinct PNGs for a focused modal input and 2 for a focused Markdown
12
+ * editor, and exactly 1 each once the caret was transparent.
13
+ *
14
+ * **`caret-color: transparent`, not `blur()`**, and the difference is not
15
+ * cosmetic. Blurring does make the bytes stable too, but it is a state change
16
+ * the app observes: in the same run an open `AbstractInputSuggest` popover closed
17
+ * the moment its input lost focus, so a blur would photograph a different frame
18
+ * from the one the test built. It also drops the focus ring, which does not
19
+ * blink and is often part of what the frame is showing. Obsidian draws its
20
+ * editor caret natively (the CodeMirror cursor layer is empty), so one
21
+ * `caret-color` covers inputs and the editor alike.
22
+ *
23
+ * **Restored afterwards**, unlike the vault name `hideVaultName` hides: the
24
+ * focused field is live state a test goes on typing into, and a caret that
25
+ * silently stayed invisible would be a surprise with no error attached.
26
+ *
27
+ * `captureObsidianScreenshot` calls this by default. It is exported for the
28
+ * captures that cannot: `captureDeviceScreenshot` reads the device framebuffer
29
+ * over `adb` and has no page channel, and its typical frame — a field with the
30
+ * soft keyboard under it — is exactly the frame where blurring is wrong, since
31
+ * blurring would take the keyboard down with the focus.
32
+ */
33
+ import type { ObsidianTransport } from './transport.cjs';
34
+ /**
35
+ * What {@link hideCaret} returns: whether a caret was hidden, and how to put it
36
+ * back.
37
+ */
38
+ export interface HiddenCaret {
39
+ /**
40
+ * Whether an element held focus, and so had a caret to hide. `false` is a
41
+ * legitimate answer — a frame with nothing focused has no caret — and
42
+ * {@link restore} is then a no-op.
43
+ */
44
+ readonly isHidden: boolean;
45
+ /**
46
+ * Puts the focused element's own inline `caret-color` back, exactly as it
47
+ * was — removed when it had none.
48
+ *
49
+ * @returns A {@link Promise} that resolves once the caret is restored.
50
+ */
51
+ restore: () => Promise<void>;
52
+ }
53
+ /**
54
+ * Options for {@link hideCaret}.
55
+ */
56
+ export interface HideCaretOptions {
57
+ /**
58
+ * Override the transport. When omitted, the transport the current test
59
+ * context is driving is used.
60
+ */
61
+ readonly transport?: ObsidianTransport;
62
+ /**
63
+ * The vault whose Obsidian window to hide the caret in. When omitted, the
64
+ * current test context's vault is used.
65
+ */
66
+ readonly vaultPath?: string;
67
+ }
68
+ /**
69
+ * Makes the caret of the focused element transparent, leaving the focus itself
70
+ * alone.
71
+ *
72
+ * The element is found through nested shadow roots, since
73
+ * `document.activeElement` stops at a shadow host and the caret belongs to the
74
+ * element inside it. Re-applying before a restore keeps the ORIGINAL value, so
75
+ * two hides and one restore still leave the element as it was found; a hide on
76
+ * a different element first restores the one an unrestored hide left behind.
77
+ *
78
+ * @param options - Transport and vault overrides.
79
+ * @returns A {@link Promise} that resolves to the {@link HiddenCaret}.
80
+ */
81
+ export declare function hideCaret(options?: HideCaretOptions): Promise<HiddenCaret>;
@@ -68,6 +68,7 @@ __export(index_exports, {
68
68
  fitScreenshotToCanvas: () => import_fit_screenshot.fitScreenshotToCanvas,
69
69
  getAppConfig: () => import_app_config.getAppConfig,
70
70
  getVersionMetadata: () => import_obsidian_metadata.getVersionMetadata,
71
+ hideCaret: () => import_hide_caret.hideCaret,
71
72
  hideVaultName: () => import_hide_vault_name.hideVaultName,
72
73
  isPng: () => import_capture_screenshot.isPng,
73
74
  isScriptTimeoutError: () => import_eval_cap_exceeded_error.isScriptTimeoutError,
@@ -133,6 +134,7 @@ var import_eval_cap_exceeded_error = require("./eval-cap-exceeded-error.cjs");
133
134
  var import_eval_cap = require("./eval-cap.cjs");
134
135
  var import_eval_in_obsidian = require("./eval-in-obsidian.cjs");
135
136
  var import_fit_screenshot = require("./fit-screenshot.cjs");
137
+ var import_hide_caret = require("./hide-caret.cjs");
136
138
  var import_hide_vault_name = require("./hide-vault-name.cjs");
137
139
  var import_incompatible_installer_version_error = require("./incompatible-installer-version-error.cjs");
138
140
  var import_installer_compatibility = require("./installer-compatibility.cjs");
@@ -211,6 +213,7 @@ var import_version_matrix = require("./version-matrix.cjs");
211
213
  fitScreenshotToCanvas,
212
214
  getAppConfig,
213
215
  getVersionMetadata,
216
+ hideCaret,
214
217
  hideVaultName,
215
218
  isPng,
216
219
  isScriptTimeoutError,
@@ -250,4 +253,4 @@ var import_version_matrix = require("./version-matrix.cjs");
250
253
  withSoftKeyboardEnabled,
251
254
  writeDeviceSetting
252
255
  });
253
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQ29udGFpbnMgdGhlIGVudHJ5IHBvaW50IGZvciB0aGUgaW50ZWdyYXRpb24gdGVzdGluZyBtb2R1bGUuXG4gKi9cblxuZXhwb3J0IHR5cGUgeyBSdW5BZGJQYXJhbXMgfSBmcm9tICcuL2FkYi5janMnO1xuZXhwb3J0IHtcbiAgcnVuQWRiQmluYXJ5LFxuICBydW5BZGJUZXh0LFxuICBydW5BZGJUZXh0V2l0aG91dERldmljZVxufSBmcm9tICcuL2FkYi5janMnO1xuZXhwb3J0IHR5cGUge1xuICBBcHBDb25maWdSZXN0b3JlLFxuICBHZXRBcHBDb25maWdQYXJhbXMsXG4gIFNldEFwcENvbmZpZ1BhcmFtcyxcbiAgV2l0aEFwcENvbmZpZ1BhcmFtc1xufSBmcm9tICcuL2FwcC1jb25maWcuY2pzJztcbmV4cG9ydCB7XG4gIGdldEFwcENvbmZpZyxcbiAgcmVzdG9yZUFwcENvbmZpZyxcbiAgc2V0QXBwQ29uZmlnLFxuICB3aXRoQXBwQ29uZmlnXG59IGZyb20gJy4vYXBwLWNvbmZpZy5janMnO1xuZXhwb3J0IHR5cGUge1xuICBBc2FyRmFsbGJhY2ssXG4gIEFzYXJGYWxsYmFja1RpZXIsXG4gIFJlc29sdmVBc2FyRmFsbGJhY2tQYXJhbXNcbn0gZnJvbSAnLi9hc2FyLWZhbGxiYWNrLWRldGVjdGlvbi5janMnO1xuZXhwb3J0IHsgcmVzb2x2ZUFzYXJGYWxsYmFjayB9IGZyb20gJy4vYXNhci1mYWxsYmFjay1kZXRlY3Rpb24uY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdE9wdGlvbnMgfSBmcm9tICcuL2NhcHR1cmUtb2JzaWRpYW4tc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHsgY2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdCB9IGZyb20gJy4vY2FwdHVyZS1vYnNpZGlhbi1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENhcHR1cmVTY3JlZW5zaG90UGFyYW1zLFxuICBQbmdEaW1lbnNpb25zXG59IGZyb20gJy4vY2FwdHVyZS1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQge1xuICBidWlsZERldmljZU1ldHJpY3NPdmVycmlkZSxcbiAgZGVjb2RlQmFzZTY0UG5nLFxuICBpc1BuZyxcbiAgcmVhZFBuZ0RpbWVuc2lvbnNcbn0gZnJvbSAnLi9jYXB0dXJlLXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2RwQ29tbWFuZFRpbWVvdXRFcnJvckNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi9jZHAtY29tbWFuZC10aW1lb3V0LWVycm9yLmNqcyc7XG5leHBvcnQgeyBDZHBDb21tYW5kVGltZW91dEVycm9yIH0gZnJvbSAnLi9jZHAtY29tbWFuZC10aW1lb3V0LWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7IENvbmZpZ0RpcmVjdG9yeUZhbGxiYWNrRXJyb3JDb25zdHJ1Y3RvclBhcmFtcyB9IGZyb20gJy4vY29uZmlnLWRpcmVjdG9yeS1mYWxsYmFjay1lcnJvci5janMnO1xuZXhwb3J0IHsgQ29uZmlnRGlyZWN0b3J5RmFsbGJhY2tFcnJvciB9IGZyb20gJy4vY29uZmlnLWRpcmVjdG9yeS1mYWxsYmFjay1lcnJvci5janMnO1xuZXhwb3J0IHtcbiAgYXNzZXJ0VmFsaWRDb25maWdEaXJlY3RvcnksXG4gIERFRkFVTFRfQ09ORklHX0RJUkVDVE9SWVxufSBmcm9tICcuL2NvbmZpZy1kaXJlY3RvcnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2RwQ29ubmVjdGlvbixcbiAgQ29ubmVjdFRvQ2RwT3B0aW9uc1xufSBmcm9tICcuL2Nvbm5lY3QtdG8tY2RwLmNqcyc7XG5leHBvcnQgeyBjb25uZWN0VG9DZHAgfSBmcm9tICcuL2Nvbm5lY3QtdG8tY2RwLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENvbnRleHRBcmd1bWVudHMsXG4gIENvbnRleHRPZlxufSBmcm9tICcuL2NvbnRleHQtaWQuY2pzJztcbmV4cG9ydCB7IENvbnRleHRJZCB9IGZyb20gJy4vY29udGV4dC1pZC5janMnO1xuZXhwb3J0IHR5cGUge1xuICBTZXR1cEVycm9yUmVzb2x2ZXIsXG4gIFRyYW5zcG9ydE9wdGlvbnNSZXNvbHZlcixcbiAgVmF1bHRQYXRoUmVzb2x2ZXJcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5leHBvcnQge1xuICBzZXRTZXR1cEVycm9yUmVzb2x2ZXIsXG4gIHNldFRyYW5zcG9ydE9wdGlvbnNSZXNvbHZlcixcbiAgc2V0VmF1bHRQYXRoUmVzb2x2ZXJcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEJvb3RzdHJhcERlbW9WYXVsdFBsdWdpbnNQYXJhbXMsXG4gIEJvb3RzdHJhcERlbW9WYXVsdFBsdWdpbnNSZXN1bHQsXG4gIEJ1aWxkRGVtb1ZhdWx0UG9wdWxhdGVBc3luY1BhcmFtcyxcbiAgSW5zdGFsbGVkUGx1Z2luSW5mb1xufSBmcm9tICcuL2RlbW8tdmF1bHQtYm9vdHN0cmFwLmNqcyc7XG5leHBvcnQge1xuICBib290c3RyYXBEZW1vVmF1bHRQbHVnaW5zLFxuICBidWlsZERlbW9WYXVsdFBvcHVsYXRlQXN5bmNcbn0gZnJvbSAnLi9kZW1vLXZhdWx0LWJvb3RzdHJhcC5janMnO1xuZXhwb3J0IHR5cGUge1xuICBCdWlsZERlbW9WYXVsdFBvcHVsYXRlUGFyYW1zLFxuICBJbmplY3RQbHVnaW5QYXJhbXMsXG4gIFJlc29sdmVNaXNzaW5nSW5qZWN0ZWRQbHVnaW5zUGFyYW1zXG59IGZyb20gJy4vZGVtby12YXVsdC1wb3B1bGF0ZS5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGREZW1vVmF1bHRQb3B1bGF0ZSxcbiAgcmVzb2x2ZU1pc3NpbmdJbmplY3RlZFBsdWdpbnNcbn0gZnJvbSAnLi9kZW1vLXZhdWx0LXBvcHVsYXRlLmNqcyc7XG5leHBvcnQgdHlwZSB7IFJlYWREZW1vVmF1bHRUcmVlUGFyYW1zIH0gZnJvbSAnLi9kZW1vLXZhdWx0LXRyZWUuY2pzJztcbmV4cG9ydCB7IHJlYWREZW1vVmF1bHRUcmVlIH0gZnJvbSAnLi9kZW1vLXZhdWx0LXRyZWUuY2pzJztcbmV4cG9ydCB7IERlc2t0b3BPbmx5UGx1Z2luU2tpcEVycm9yIH0gZnJvbSAnLi9kZXNrdG9wLW9ubHktcGx1Z2luLXNraXAtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2FwdHVyZURldmljZVNjcmVlbnNob3RQYXJhbXMgfSBmcm9tICcuL2RldmljZS1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQgeyBjYXB0dXJlRGV2aWNlU2NyZWVuc2hvdCB9IGZyb20gJy4vZGV2aWNlLXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGV2aWNlU2V0dGluZ1Jlc3RvcmUsXG4gIERldmljZVNldHRpbmdSZXN0b3JlRGVsZXRlLFxuICBEZXZpY2VTZXR0aW5nUmVzdG9yZVdyaXRlXG59IGZyb20gJy4vZGV2aWNlLXNldHRpbmctcmVzdG9yZS5janMnO1xuZXhwb3J0IHtcbiAgRGV2aWNlU2V0dGluZ1Jlc3RvcmVLaW5kLFxuICByZXNvbHZlRGV2aWNlU2V0dGluZ1Jlc3RvcmVcbn0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZy1yZXN0b3JlLmNqcyc7XG5leHBvcnQgdHlwZSB7IEJ1aWxkRGV2aWNlU2V0dGluZ3NDb21tYW5kQXJndW1lbnRzUGFyYW1zIH0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZ3MtY29tbWFuZC5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGREZXZpY2VTZXR0aW5nc0NvbW1hbmRBcmd1bWVudHMsXG4gIERldmljZVNldHRpbmdOYW1lc3BhY2UsXG4gIERldmljZVNldHRpbmdWZXJiXG59IGZyb20gJy4vZGV2aWNlLXNldHRpbmdzLWNvbW1hbmQuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGV2aWNlU2V0dGluZ1BhcmFtcyxcbiAgV2l0aFNvZnRLZXlib2FyZEVuYWJsZWRQYXJhbXMsXG4gIFdyaXRlRGV2aWNlU2V0dGluZ1BhcmFtc1xufSBmcm9tICcuL2RldmljZS1zZXR0aW5ncy5janMnO1xuZXhwb3J0IHtcbiAgZGVsZXRlRGV2aWNlU2V0dGluZyxcbiAgcmVhZERldmljZVNldHRpbmcsXG4gIHdpdGhTb2Z0S2V5Ym9hcmRFbmFibGVkLFxuICB3cml0ZURldmljZVNldHRpbmdcbn0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZ3MuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRWxlY3Ryb25Db21wYXRpYmlsaXR5LFxuICBFbGVjdHJvbkNvbXBhdGliaWxpdHlUaWVyLFxuICBSZXNvbHZlRWxlY3Ryb25Db21wYXRpYmlsaXR5UGFyYW1zXG59IGZyb20gJy4vZWxlY3Ryb24tY29tcGF0aWJpbGl0eS5janMnO1xuZXhwb3J0IHsgcmVzb2x2ZUVsZWN0cm9uQ29tcGF0aWJpbGl0eSB9IGZyb20gJy4vZWxlY3Ryb24tY29tcGF0aWJpbGl0eS5janMnO1xuZXhwb3J0IHR5cGUge1xuICBFbXVsYXRvckRldmljZUNhbmRpZGF0ZSxcbiAgU2VsZWN0RW11bGF0b3JEZXZpY2VJZFBhcmFtc1xufSBmcm9tICcuL2VtdWxhdG9yLWRldmljZS1pZC5janMnO1xuZXhwb3J0IHsgc2VsZWN0RW11bGF0b3JEZXZpY2VJZCB9IGZyb20gJy4vZW11bGF0b3ItZGV2aWNlLWlkLmNqcyc7XG5leHBvcnQgdHlwZSB7IEV2YWxDYXBFeGNlZWRlZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL2V2YWwtY2FwLWV4Y2VlZGVkLWVycm9yLmNqcyc7XG5leHBvcnQge1xuICBFdmFsQ2FwRXhjZWVkZWRFcnJvcixcbiAgaXNTY3JpcHRUaW1lb3V0RXJyb3Jcbn0gZnJvbSAnLi9ldmFsLWNhcC1leGNlZWRlZC1lcnJvci5janMnO1xuZXhwb3J0IHsgREVGQVVMVF9FVkFMX0NBUF9JTl9NSUxMSVNFQ09ORFMgfSBmcm9tICcuL2V2YWwtY2FwLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENsaWNrRWxlbWVudFBhcmFtcyxcbiAgQ2xpY2tNb3VzZVBhcmFtcyxcbiAgQ29tbW9uQXJndW1lbnRzLFxuICBDcmVhdGVOb3RlUGFyYW1zLFxuICBFdmFsSW5PYnNpZGlhblBhcmFtcyxcbiAgR2VuZXJpY09iamVjdCxcbiAgSG92ZXJFbGVtZW50UGFyYW1zLFxuICBMaWIsXG4gIE1vdXNlQnV0dG9uLFxuICBNb3ZlTW91c2VQYXJhbXMsXG4gIE9wZW5TZXR0aW5nc1RhYlBhcmFtcyxcbiAgUHJlc3NLZXlQYXJhbXMsXG4gIFR5cGVJbnRvRWRpdG9yUGFyYW1zLFxuICBVbmhvdmVyRWxlbWVudFBhcmFtcyxcbiAgV2FpdFVudGlsUGFyYW1zXG59IGZyb20gJy4vZXZhbC1pbi1vYnNpZGlhbi5janMnO1xuZXhwb3J0IHsgZXZhbEluT2JzaWRpYW4gfSBmcm9tICcuL2V2YWwtaW4tb2JzaWRpYW4uY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29tcHV0ZUZpdFRvQ2FudmFzUGFyYW1zLFxuICBGaXRTY3JlZW5zaG90VG9DYW52YXNPcHRpb25zLFxuICBGaXRUb0NhbnZhc0dlb21ldHJ5XG59IGZyb20gJy4vZml0LXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB7XG4gIGNvbXB1dGVGaXRUb0NhbnZhcyxcbiAgZml0U2NyZWVuc2hvdFRvQ2FudmFzXG59IGZyb20gJy4vZml0LXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHsgSGlkZVZhdWx0TmFtZU9wdGlvbnMgfSBmcm9tICcuL2hpZGUtdmF1bHQtbmFtZS5janMnO1xuZXhwb3J0IHsgaGlkZVZhdWx0TmFtZSB9IGZyb20gJy4vaGlkZS12YXVsdC1uYW1lLmNqcyc7XG5leHBvcnQgdHlwZSB7IEluY29tcGF0aWJsZUluc3RhbGxlclZlcnNpb25FcnJvckNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi9pbmNvbXBhdGlibGUtaW5zdGFsbGVyLXZlcnNpb24tZXJyb3IuY2pzJztcbmV4cG9ydCB7IEluY29tcGF0aWJsZUluc3RhbGxlclZlcnNpb25FcnJvciB9IGZyb20gJy4vaW5jb21wYXRpYmxlLWluc3RhbGxlci12ZXJzaW9uLWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEluc3RhbGxlckNvbXBhdGliaWxpdHksXG4gIEluc3RhbGxlckNvbXBhdGliaWxpdHlUaWVyLFxuICBSZXNvbHZlSW5zdGFsbGVyQ29tcGF0aWJpbGl0eVBhcmFtc1xufSBmcm9tICcuL2luc3RhbGxlci1jb21wYXRpYmlsaXR5LmNqcyc7XG5leHBvcnQgeyByZXNvbHZlSW5zdGFsbGVyQ29tcGF0aWJpbGl0eSB9IGZyb20gJy4vaW5zdGFsbGVyLWNvbXBhdGliaWxpdHkuY2pzJztcbmV4cG9ydCB0eXBlIHsgSW50ZWdyYXRpb25TZXR1cEZhaWxlZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL2ludGVncmF0aW9uLXNldHVwLWZhaWxlZC1lcnJvci5janMnO1xuZXhwb3J0IHsgSW50ZWdyYXRpb25TZXR1cEZhaWxlZEVycm9yIH0gZnJvbSAnLi9pbnRlZ3JhdGlvbi1zZXR1cC1mYWlsZWQtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29tcHV0ZUxhYmVsQmFuZFBhcmFtcyxcbiAgTGFiZWxCYW5kR2VvbWV0cnksXG4gIExhYmVsQ2FwdGlvbk1lYXN1cmVtZW50LFxuICBMYWJlbFNjcmVlbnNob3RPcHRpb25zLFxuICBNZWFzdXJlTGFiZWxDYXB0aW9uUGFyYW1zXG59IGZyb20gJy4vbGFiZWwtc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGRMYWJlbFN2ZyxcbiAgY29tcHV0ZUxhYmVsQmFuZCxcbiAgZXNjYXBlU3ZnVGV4dCxcbiAgbGFiZWxTY3JlZW5zaG90LFxuICBtZWFzdXJlTGFiZWxDYXB0aW9uXG59IGZyb20gJy4vbGFiZWwtc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHR5cGUgeyBMaWJSZXNvbHZlciB9IGZyb20gJy4vbGliLXJlZ2lzdHJ5LmNqcyc7XG5leHBvcnQgeyByZWdpc3RlckxpYlJlc29sdmVyIH0gZnJvbSAnLi9saWItcmVnaXN0cnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgT2JzaWRpYW5SdW50aW1lVmVyc2lvbnMsXG4gIE9ic2lkaWFuVmVyc2lvbkNoYW5nZWxvZ1VybHMsXG4gIE9ic2lkaWFuVmVyc2lvbkRvd25sb2FkcyxcbiAgT2JzaWRpYW5WZXJzaW9uTWV0YWRhdGFcbn0gZnJvbSAnLi9vYnNpZGlhbi1tZXRhZGF0YS5janMnO1xuZXhwb3J0IHsgZ2V0VmVyc2lvbk1ldGFkYXRhIH0gZnJvbSAnLi9vYnNpZGlhbi1tZXRhZGF0YS5janMnO1xuZXhwb3J0IHtcbiAgQ0FUQUxZU1RfTEFURVNULFxuICBQVUJMSUNfTEFURVNUXG59IGZyb20gJy4vb2JzaWRpYW4tdmVyc2lvbi5janMnO1xuZXhwb3J0IHR5cGUgeyBPcGVuT2JzaWRpYW5TZXR0aW5nc1RhYlBhcmFtcyB9IGZyb20gJy4vb3Blbi1vYnNpZGlhbi1zZXR0aW5ncy10YWIuY2pzJztcbmV4cG9ydCB7IG9wZW5PYnNpZGlhblNldHRpbmdzVGFiIH0gZnJvbSAnLi9vcGVuLW9ic2lkaWFuLXNldHRpbmdzLXRhYi5janMnO1xuZXhwb3J0IHR5cGUgeyBPd25lZEluc3RhbmNlRXhpdGVkRXJyb3JDb25zdHJ1Y3RvclBhcmFtcyB9IGZyb20gJy4vb3duZWQtaW5zdGFuY2UtZXhpdGVkLWVycm9yLmNqcyc7XG5leHBvcnQgeyBPd25lZEluc3RhbmNlRXhpdGVkRXJyb3IgfSBmcm9tICcuL293bmVkLWluc3RhbmNlLWV4aXRlZC1lcnJvci5janMnO1xuZXhwb3J0IHR5cGUge1xuICBCdWlsZFN0YXR1c0JhckJhbmRGYWlsdXJlTWVzc2FnZVBhcmFtcyxcbiAgUGFpbnRPdXRTdGF0dXNCYXJPcHRpb25zLFxuICBSZXNvbHZlU3RhdHVzQmFyQmFuZFBhcmFtcyxcbiAgU3RhdHVzQmFyQmFuZENvbG9yLFxuICBTdGF0dXNCYXJCYW5kVmVyZGljdFxufSBmcm9tICcuL3BhaW50LW91dC1zdGF0dXMtYmFyLmNqcyc7XG5leHBvcnQge1xuICBidWlsZFN0YXR1c0JhckJhbmRGYWlsdXJlTWVzc2FnZSxcbiAgREVGQVVMVF9TVEFUVVNfQkFSX0VER0VfTUFSR0lOX0lOX1BJWEVMUyxcbiAgREVGQVVMVF9TVEFUVVNfQkFSX1NBTVBMRV9JTlNFVF9JTl9QSVhFTFMsXG4gIHBhaW50T3V0U3RhdHVzQmFyLFxuICByZXNvbHZlU3RhdHVzQmFyQmFuZFxufSBmcm9tICcuL3BhaW50LW91dC1zdGF0dXMtYmFyLmNqcyc7XG5leHBvcnQgdHlwZSB7IFBvbGxJbk9ic2lkaWFuUGFyYW1zIH0gZnJvbSAnLi9wb2xsLWluLW9ic2lkaWFuLmNqcyc7XG5leHBvcnQgeyBwb2xsSW5PYnNpZGlhbiB9IGZyb20gJy4vcG9sbC1pbi1vYnNpZGlhbi5janMnO1xuZXhwb3J0IHsgUmVuZGVyZXJGYWlsZWRUb0luaXRpYWxpemVFcnJvciB9IGZyb20gJy4vcmVuZGVyZXItZmFpbGVkLXRvLWluaXRpYWxpemUtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHsgUmVzb2x2ZUVtdWxhdG9yRGV2aWNlSWRQYXJhbXMgfSBmcm9tICcuL3Jlc29sdmUtZW11bGF0b3ItZGV2aWNlLWlkLmNqcyc7XG5leHBvcnQgeyByZXNvbHZlRW11bGF0b3JEZXZpY2VJZCB9IGZyb20gJy4vcmVzb2x2ZS1lbXVsYXRvci1kZXZpY2UtaWQuY2pzJztcbmV4cG9ydCB0eXBlIHsgUnVuT2JzaWRpYW5WZXJzaW9uTWF0cml4UGFyYW1zIH0gZnJvbSAnLi9ydW4tdmVyc2lvbi1tYXRyaXguY2pzJztcbmV4cG9ydCB7IHJ1bk9ic2lkaWFuVmVyc2lvbk1hdHJpeCB9IGZyb20gJy4vcnVuLXZlcnNpb24tbWF0cml4LmNqcyc7XG5leHBvcnQgdHlwZSB7IFNpbGVudEFzYXJGYWxsYmFja0Vycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3NpbGVudC1hc2FyLWZhbGxiYWNrLWVycm9yLmNqcyc7XG5leHBvcnQgeyBTaWxlbnRBc2FyRmFsbGJhY2tFcnJvciB9IGZyb20gJy4vc2lsZW50LWFzYXItZmFsbGJhY2stZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQnVpbGRTb2Z0S2V5Ym9hcmREaWFnbm9zdGljTWVzc2FnZVBhcmFtcyxcbiAgQ2hlY2tJc1NvZnRLZXlib2FyZFVwUGFyYW1zLFxuICBFbGVtZW50UmVjdCxcbiAgUmVzb2x2ZVNvZnRLZXlib2FyZFRhcFBvaW50c1BhcmFtcyxcbiAgU29mdEtleWJvYXJkVGFwUG9pbnQsXG4gIFNvZnRLZXlib2FyZFZpZXdwb3J0U25hcHNob3Rcbn0gZnJvbSAnLi9zb2Z0LWtleWJvYXJkLWdlb21ldHJ5LmNqcyc7XG5leHBvcnQge1xuICBidWlsZFNvZnRLZXlib2FyZERpYWdub3N0aWNNZXNzYWdlLFxuICBjaGVja0lzSW5wdXRNZXRob2RTaG93bixcbiAgY2hlY2tJc1NvZnRLZXlib2FyZFVwLFxuICBERUZBVUxUX01JTklNVU1fS0VZQk9BUkRfSEVJR0hUX0lOX1BJWEVMUyxcbiAgcGFyc2VJbnB1dE1ldGhvZFN0YXRlLFxuICByZXNvbHZlU29mdEtleWJvYXJkVGFwUG9pbnRzXG59IGZyb20gJy4vc29mdC1rZXlib2FyZC1nZW9tZXRyeS5janMnO1xuZXhwb3J0IHR5cGUge1xuICBSYWlzZVNvZnRLZXlib2FyZFBhcmFtcyxcbiAgVGFwRGV2aWNlUGFyYW1zXG59IGZyb20gJy4vc29mdC1rZXlib2FyZC5janMnO1xuZXhwb3J0IHtcbiAgcmFpc2VTb2Z0S2V5Ym9hcmQsXG4gIHRhcERldmljZVxufSBmcm9tICcuL3NvZnQta2V5Ym9hcmQuY2pzJztcbmV4cG9ydCB0eXBlIHsgU3RhbGVCdWlsZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3N0YWxlLWJ1aWxkLWVycm9yLmNqcyc7XG5leHBvcnQgeyBTdGFsZUJ1aWxkRXJyb3IgfSBmcm9tICcuL3N0YWxlLWJ1aWxkLWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIFBvcHVsYXRlRmlsZUNvbnRlbnQsXG4gIFBvcHVsYXRlRmlsZXNQYXJhbXMsXG4gIFRlbXBvcmFyeVZhdWx0Q29uc3RydWN0b3JPcHRpb25zXG59IGZyb20gJy4vdGVtcG9yYXJ5LXZhdWx0LmNqcyc7XG5leHBvcnQgeyBUZW1wb3JhcnlWYXVsdCB9IGZyb20gJy4vdGVtcG9yYXJ5LXZhdWx0LmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEFwcGl1bVNlc3Npb25JbmZvLFxuICBBcHBpdW1UcmFuc3BvcnRDb25maWdcbn0gZnJvbSAnLi90cmFuc3BvcnQtYXBwaXVtLmNqcyc7XG5leHBvcnQgeyBBcHBpdW1UcmFuc3BvcnQgfSBmcm9tICcuL3RyYW5zcG9ydC1hcHBpdW0uY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGVza3RvcENkcFRyYW5zcG9ydENvbmZpZyxcbiAgT3duZWRJbnN0YW5jZUFzYXIsXG4gIE93bmVkSW5zdGFuY2VDb25maWcsXG4gIE93bmVkSW5zdGFuY2VFbmRwb2ludFxufSBmcm9tICcuL3RyYW5zcG9ydC1kZXNrdG9wLWNkcC5janMnO1xuZXhwb3J0IHsgRGVza3RvcENkcFRyYW5zcG9ydCB9IGZyb20gJy4vdHJhbnNwb3J0LWRlc2t0b3AtY2RwLmNqcyc7XG5leHBvcnQgeyBjcmVhdGVUcmFuc3BvcnRGcm9tT3B0aW9ucyB9IGZyb20gJy4vdHJhbnNwb3J0LWZhY3RvcnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgT2JzaWRpYW5BbmRyb2lkQXBwaXVtVHJhbnNwb3J0T3B0aW9ucyxcbiAgT2JzaWRpYW5DZHBUcmFuc3BvcnRPcHRpb25zLFxuICBPYnNpZGlhblRyYW5zcG9ydE9wdGlvbnNcbn0gZnJvbSAnLi90cmFuc3BvcnQtb3B0aW9ucy5janMnO1xuZXhwb3J0IHsgY2hlY2tJc01vYmlsZVRyYW5zcG9ydCB9IGZyb20gJy4vdHJhbnNwb3J0LW9wdGlvbnMuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29uc29sZUNhcHR1cmVIYW5kbGUsXG4gIE9ic2lkaWFuVHJhbnNwb3J0LFxuICBUcmFuc3BvcnRFdmFsT3B0aW9uc1xufSBmcm9tICcuL3RyYW5zcG9ydC5janMnO1xuZXhwb3J0IHtcbiAgcmVnaXN0ZXJWYXVsdCxcbiAgdW5yZWdpc3RlclZhdWx0XG59IGZyb20gJy4vdmF1bHQtcmVnaXN0cnkuY2pzJztcbmV4cG9ydCB0eXBlIHsgT2JzaWRpYW5WZXJzaW9uTWF0cml4RW50cnkgfSBmcm9tICcuL3ZlcnNpb24tbWF0cml4LmNqcyc7XG5leHBvcnQgeyBERUZBVUxUX09CU0lESUFOX1ZFUlNJT05fU1BFQ1MgfSBmcm9tICcuL3ZlcnNpb24tbWF0cml4LmNqcyc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0EsaUJBSU87QUFPUCx3QkFLTztBQU1QLHFDQUFvQztBQUVwQyx5Q0FBMEM7QUFLMUMsZ0NBS087QUFFUCx1Q0FBdUM7QUFFdkMsNkNBQTZDO0FBQzdDLDhCQUdPO0FBS1AsNEJBQTZCO0FBSzdCLHdCQUEwQjtBQU0xQiw4QkFJTztBQU9QLGtDQUdPO0FBTVAsaUNBR087QUFFUCw2QkFBa0M7QUFDbEMsNENBQTJDO0FBRTNDLCtCQUF3QztBQU14QyxvQ0FHTztBQUVQLHFDQUlPO0FBTVAsNkJBS087QUFNUCxvQ0FBNkM7QUFLN0MsZ0NBQXVDO0FBRXZDLHFDQUdPO0FBQ1Asc0JBQWlEO0FBa0JqRCw4QkFBK0I7QUFNL0IsNEJBR087QUFFUCw2QkFBOEI7QUFFOUIsa0RBQWtEO0FBTWxELHFDQUE4QztBQUU5Qyw0Q0FBNEM7QUFRNUMsOEJBTU87QUFFUCwwQkFBb0M7QUFPcEMsK0JBQW1DO0FBQ25DLDhCQUdPO0FBRVAsd0NBQXdDO0FBRXhDLHlDQUF5QztBQVF6QyxrQ0FNTztBQUVQLDhCQUErQjtBQUMvQixpREFBZ0Q7QUFFaEQsd0NBQXdDO0FBRXhDLGdDQUF5QztBQUV6Qyx3Q0FBd0M7QUFTeEMsb0NBT087QUFLUCwyQkFHTztBQUVQLCtCQUFnQztBQU1oQyw2QkFBK0I7QUFLL0IsOEJBQWdDO0FBT2hDLG1DQUFvQztBQUNwQywrQkFBMkM7QUFNM0MsK0JBQXVDO0FBTXZDLDRCQUdPO0FBRVAsNEJBQStDOyIsCiAgIm5hbWVzIjogW10KfQo=
256
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQ29udGFpbnMgdGhlIGVudHJ5IHBvaW50IGZvciB0aGUgaW50ZWdyYXRpb24gdGVzdGluZyBtb2R1bGUuXG4gKi9cblxuZXhwb3J0IHR5cGUgeyBSdW5BZGJQYXJhbXMgfSBmcm9tICcuL2FkYi5janMnO1xuZXhwb3J0IHtcbiAgcnVuQWRiQmluYXJ5LFxuICBydW5BZGJUZXh0LFxuICBydW5BZGJUZXh0V2l0aG91dERldmljZVxufSBmcm9tICcuL2FkYi5janMnO1xuZXhwb3J0IHR5cGUge1xuICBBcHBDb25maWdSZXN0b3JlLFxuICBHZXRBcHBDb25maWdQYXJhbXMsXG4gIFNldEFwcENvbmZpZ1BhcmFtcyxcbiAgV2l0aEFwcENvbmZpZ1BhcmFtc1xufSBmcm9tICcuL2FwcC1jb25maWcuY2pzJztcbmV4cG9ydCB7XG4gIGdldEFwcENvbmZpZyxcbiAgcmVzdG9yZUFwcENvbmZpZyxcbiAgc2V0QXBwQ29uZmlnLFxuICB3aXRoQXBwQ29uZmlnXG59IGZyb20gJy4vYXBwLWNvbmZpZy5janMnO1xuZXhwb3J0IHR5cGUge1xuICBBc2FyRmFsbGJhY2ssXG4gIEFzYXJGYWxsYmFja1RpZXIsXG4gIFJlc29sdmVBc2FyRmFsbGJhY2tQYXJhbXNcbn0gZnJvbSAnLi9hc2FyLWZhbGxiYWNrLWRldGVjdGlvbi5janMnO1xuZXhwb3J0IHsgcmVzb2x2ZUFzYXJGYWxsYmFjayB9IGZyb20gJy4vYXNhci1mYWxsYmFjay1kZXRlY3Rpb24uY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdE9wdGlvbnMgfSBmcm9tICcuL2NhcHR1cmUtb2JzaWRpYW4tc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHsgY2FwdHVyZU9ic2lkaWFuU2NyZWVuc2hvdCB9IGZyb20gJy4vY2FwdHVyZS1vYnNpZGlhbi1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENhcHR1cmVTY3JlZW5zaG90UGFyYW1zLFxuICBQbmdEaW1lbnNpb25zXG59IGZyb20gJy4vY2FwdHVyZS1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQge1xuICBidWlsZERldmljZU1ldHJpY3NPdmVycmlkZSxcbiAgZGVjb2RlQmFzZTY0UG5nLFxuICBpc1BuZyxcbiAgcmVhZFBuZ0RpbWVuc2lvbnNcbn0gZnJvbSAnLi9jYXB0dXJlLXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2RwQ29tbWFuZFRpbWVvdXRFcnJvckNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi9jZHAtY29tbWFuZC10aW1lb3V0LWVycm9yLmNqcyc7XG5leHBvcnQgeyBDZHBDb21tYW5kVGltZW91dEVycm9yIH0gZnJvbSAnLi9jZHAtY29tbWFuZC10aW1lb3V0LWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7IENvbmZpZ0RpcmVjdG9yeUZhbGxiYWNrRXJyb3JDb25zdHJ1Y3RvclBhcmFtcyB9IGZyb20gJy4vY29uZmlnLWRpcmVjdG9yeS1mYWxsYmFjay1lcnJvci5janMnO1xuZXhwb3J0IHsgQ29uZmlnRGlyZWN0b3J5RmFsbGJhY2tFcnJvciB9IGZyb20gJy4vY29uZmlnLWRpcmVjdG9yeS1mYWxsYmFjay1lcnJvci5janMnO1xuZXhwb3J0IHtcbiAgYXNzZXJ0VmFsaWRDb25maWdEaXJlY3RvcnksXG4gIERFRkFVTFRfQ09ORklHX0RJUkVDVE9SWVxufSBmcm9tICcuL2NvbmZpZy1kaXJlY3RvcnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2RwQ29ubmVjdGlvbixcbiAgQ29ubmVjdFRvQ2RwT3B0aW9uc1xufSBmcm9tICcuL2Nvbm5lY3QtdG8tY2RwLmNqcyc7XG5leHBvcnQgeyBjb25uZWN0VG9DZHAgfSBmcm9tICcuL2Nvbm5lY3QtdG8tY2RwLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENvbnRleHRBcmd1bWVudHMsXG4gIENvbnRleHRPZlxufSBmcm9tICcuL2NvbnRleHQtaWQuY2pzJztcbmV4cG9ydCB7IENvbnRleHRJZCB9IGZyb20gJy4vY29udGV4dC1pZC5janMnO1xuZXhwb3J0IHR5cGUge1xuICBTZXR1cEVycm9yUmVzb2x2ZXIsXG4gIFRyYW5zcG9ydE9wdGlvbnNSZXNvbHZlcixcbiAgVmF1bHRQYXRoUmVzb2x2ZXJcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5leHBvcnQge1xuICBzZXRTZXR1cEVycm9yUmVzb2x2ZXIsXG4gIHNldFRyYW5zcG9ydE9wdGlvbnNSZXNvbHZlcixcbiAgc2V0VmF1bHRQYXRoUmVzb2x2ZXJcbn0gZnJvbSAnLi9jb250ZXh0LXByb3ZpZGVyLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEJvb3RzdHJhcERlbW9WYXVsdFBsdWdpbnNQYXJhbXMsXG4gIEJvb3RzdHJhcERlbW9WYXVsdFBsdWdpbnNSZXN1bHQsXG4gIEJ1aWxkRGVtb1ZhdWx0UG9wdWxhdGVBc3luY1BhcmFtcyxcbiAgSW5zdGFsbGVkUGx1Z2luSW5mb1xufSBmcm9tICcuL2RlbW8tdmF1bHQtYm9vdHN0cmFwLmNqcyc7XG5leHBvcnQge1xuICBib290c3RyYXBEZW1vVmF1bHRQbHVnaW5zLFxuICBidWlsZERlbW9WYXVsdFBvcHVsYXRlQXN5bmNcbn0gZnJvbSAnLi9kZW1vLXZhdWx0LWJvb3RzdHJhcC5janMnO1xuZXhwb3J0IHR5cGUge1xuICBCdWlsZERlbW9WYXVsdFBvcHVsYXRlUGFyYW1zLFxuICBJbmplY3RQbHVnaW5QYXJhbXMsXG4gIFJlc29sdmVNaXNzaW5nSW5qZWN0ZWRQbHVnaW5zUGFyYW1zXG59IGZyb20gJy4vZGVtby12YXVsdC1wb3B1bGF0ZS5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGREZW1vVmF1bHRQb3B1bGF0ZSxcbiAgcmVzb2x2ZU1pc3NpbmdJbmplY3RlZFBsdWdpbnNcbn0gZnJvbSAnLi9kZW1vLXZhdWx0LXBvcHVsYXRlLmNqcyc7XG5leHBvcnQgdHlwZSB7IFJlYWREZW1vVmF1bHRUcmVlUGFyYW1zIH0gZnJvbSAnLi9kZW1vLXZhdWx0LXRyZWUuY2pzJztcbmV4cG9ydCB7IHJlYWREZW1vVmF1bHRUcmVlIH0gZnJvbSAnLi9kZW1vLXZhdWx0LXRyZWUuY2pzJztcbmV4cG9ydCB7IERlc2t0b3BPbmx5UGx1Z2luU2tpcEVycm9yIH0gZnJvbSAnLi9kZXNrdG9wLW9ubHktcGx1Z2luLXNraXAtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHsgQ2FwdHVyZURldmljZVNjcmVlbnNob3RQYXJhbXMgfSBmcm9tICcuL2RldmljZS1zY3JlZW5zaG90LmNqcyc7XG5leHBvcnQgeyBjYXB0dXJlRGV2aWNlU2NyZWVuc2hvdCB9IGZyb20gJy4vZGV2aWNlLXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGV2aWNlU2V0dGluZ1Jlc3RvcmUsXG4gIERldmljZVNldHRpbmdSZXN0b3JlRGVsZXRlLFxuICBEZXZpY2VTZXR0aW5nUmVzdG9yZVdyaXRlXG59IGZyb20gJy4vZGV2aWNlLXNldHRpbmctcmVzdG9yZS5janMnO1xuZXhwb3J0IHtcbiAgRGV2aWNlU2V0dGluZ1Jlc3RvcmVLaW5kLFxuICByZXNvbHZlRGV2aWNlU2V0dGluZ1Jlc3RvcmVcbn0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZy1yZXN0b3JlLmNqcyc7XG5leHBvcnQgdHlwZSB7IEJ1aWxkRGV2aWNlU2V0dGluZ3NDb21tYW5kQXJndW1lbnRzUGFyYW1zIH0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZ3MtY29tbWFuZC5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGREZXZpY2VTZXR0aW5nc0NvbW1hbmRBcmd1bWVudHMsXG4gIERldmljZVNldHRpbmdOYW1lc3BhY2UsXG4gIERldmljZVNldHRpbmdWZXJiXG59IGZyb20gJy4vZGV2aWNlLXNldHRpbmdzLWNvbW1hbmQuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGV2aWNlU2V0dGluZ1BhcmFtcyxcbiAgV2l0aFNvZnRLZXlib2FyZEVuYWJsZWRQYXJhbXMsXG4gIFdyaXRlRGV2aWNlU2V0dGluZ1BhcmFtc1xufSBmcm9tICcuL2RldmljZS1zZXR0aW5ncy5janMnO1xuZXhwb3J0IHtcbiAgZGVsZXRlRGV2aWNlU2V0dGluZyxcbiAgcmVhZERldmljZVNldHRpbmcsXG4gIHdpdGhTb2Z0S2V5Ym9hcmRFbmFibGVkLFxuICB3cml0ZURldmljZVNldHRpbmdcbn0gZnJvbSAnLi9kZXZpY2Utc2V0dGluZ3MuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRWxlY3Ryb25Db21wYXRpYmlsaXR5LFxuICBFbGVjdHJvbkNvbXBhdGliaWxpdHlUaWVyLFxuICBSZXNvbHZlRWxlY3Ryb25Db21wYXRpYmlsaXR5UGFyYW1zXG59IGZyb20gJy4vZWxlY3Ryb24tY29tcGF0aWJpbGl0eS5janMnO1xuZXhwb3J0IHsgcmVzb2x2ZUVsZWN0cm9uQ29tcGF0aWJpbGl0eSB9IGZyb20gJy4vZWxlY3Ryb24tY29tcGF0aWJpbGl0eS5janMnO1xuZXhwb3J0IHR5cGUge1xuICBFbXVsYXRvckRldmljZUNhbmRpZGF0ZSxcbiAgU2VsZWN0RW11bGF0b3JEZXZpY2VJZFBhcmFtc1xufSBmcm9tICcuL2VtdWxhdG9yLWRldmljZS1pZC5janMnO1xuZXhwb3J0IHsgc2VsZWN0RW11bGF0b3JEZXZpY2VJZCB9IGZyb20gJy4vZW11bGF0b3ItZGV2aWNlLWlkLmNqcyc7XG5leHBvcnQgdHlwZSB7IEV2YWxDYXBFeGNlZWRlZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL2V2YWwtY2FwLWV4Y2VlZGVkLWVycm9yLmNqcyc7XG5leHBvcnQge1xuICBFdmFsQ2FwRXhjZWVkZWRFcnJvcixcbiAgaXNTY3JpcHRUaW1lb3V0RXJyb3Jcbn0gZnJvbSAnLi9ldmFsLWNhcC1leGNlZWRlZC1lcnJvci5janMnO1xuZXhwb3J0IHsgREVGQVVMVF9FVkFMX0NBUF9JTl9NSUxMSVNFQ09ORFMgfSBmcm9tICcuL2V2YWwtY2FwLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIENsaWNrRWxlbWVudFBhcmFtcyxcbiAgQ2xpY2tNb3VzZVBhcmFtcyxcbiAgQ29tbW9uQXJndW1lbnRzLFxuICBDcmVhdGVOb3RlUGFyYW1zLFxuICBFdmFsSW5PYnNpZGlhblBhcmFtcyxcbiAgR2VuZXJpY09iamVjdCxcbiAgSG92ZXJFbGVtZW50UGFyYW1zLFxuICBMaWIsXG4gIE1vdXNlQnV0dG9uLFxuICBNb3ZlTW91c2VQYXJhbXMsXG4gIE9wZW5TZXR0aW5nc1RhYlBhcmFtcyxcbiAgUHJlc3NLZXlQYXJhbXMsXG4gIFR5cGVJbnRvRWRpdG9yUGFyYW1zLFxuICBVbmhvdmVyRWxlbWVudFBhcmFtcyxcbiAgV2FpdFVudGlsUGFyYW1zXG59IGZyb20gJy4vZXZhbC1pbi1vYnNpZGlhbi5janMnO1xuZXhwb3J0IHsgZXZhbEluT2JzaWRpYW4gfSBmcm9tICcuL2V2YWwtaW4tb2JzaWRpYW4uY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29tcHV0ZUZpdFRvQ2FudmFzUGFyYW1zLFxuICBGaXRTY3JlZW5zaG90VG9DYW52YXNPcHRpb25zLFxuICBGaXRUb0NhbnZhc0dlb21ldHJ5XG59IGZyb20gJy4vZml0LXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB7XG4gIGNvbXB1dGVGaXRUb0NhbnZhcyxcbiAgZml0U2NyZWVuc2hvdFRvQ2FudmFzXG59IGZyb20gJy4vZml0LXNjcmVlbnNob3QuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgSGlkZGVuQ2FyZXQsXG4gIEhpZGVDYXJldE9wdGlvbnNcbn0gZnJvbSAnLi9oaWRlLWNhcmV0LmNqcyc7XG5leHBvcnQgeyBoaWRlQ2FyZXQgfSBmcm9tICcuL2hpZGUtY2FyZXQuY2pzJztcbmV4cG9ydCB0eXBlIHsgSGlkZVZhdWx0TmFtZU9wdGlvbnMgfSBmcm9tICcuL2hpZGUtdmF1bHQtbmFtZS5janMnO1xuZXhwb3J0IHsgaGlkZVZhdWx0TmFtZSB9IGZyb20gJy4vaGlkZS12YXVsdC1uYW1lLmNqcyc7XG5leHBvcnQgdHlwZSB7IEluY29tcGF0aWJsZUluc3RhbGxlclZlcnNpb25FcnJvckNvbnN0cnVjdG9yUGFyYW1zIH0gZnJvbSAnLi9pbmNvbXBhdGlibGUtaW5zdGFsbGVyLXZlcnNpb24tZXJyb3IuY2pzJztcbmV4cG9ydCB7IEluY29tcGF0aWJsZUluc3RhbGxlclZlcnNpb25FcnJvciB9IGZyb20gJy4vaW5jb21wYXRpYmxlLWluc3RhbGxlci12ZXJzaW9uLWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEluc3RhbGxlckNvbXBhdGliaWxpdHksXG4gIEluc3RhbGxlckNvbXBhdGliaWxpdHlUaWVyLFxuICBSZXNvbHZlSW5zdGFsbGVyQ29tcGF0aWJpbGl0eVBhcmFtc1xufSBmcm9tICcuL2luc3RhbGxlci1jb21wYXRpYmlsaXR5LmNqcyc7XG5leHBvcnQgeyByZXNvbHZlSW5zdGFsbGVyQ29tcGF0aWJpbGl0eSB9IGZyb20gJy4vaW5zdGFsbGVyLWNvbXBhdGliaWxpdHkuY2pzJztcbmV4cG9ydCB0eXBlIHsgSW50ZWdyYXRpb25TZXR1cEZhaWxlZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL2ludGVncmF0aW9uLXNldHVwLWZhaWxlZC1lcnJvci5janMnO1xuZXhwb3J0IHsgSW50ZWdyYXRpb25TZXR1cEZhaWxlZEVycm9yIH0gZnJvbSAnLi9pbnRlZ3JhdGlvbi1zZXR1cC1mYWlsZWQtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29tcHV0ZUxhYmVsQmFuZFBhcmFtcyxcbiAgTGFiZWxCYW5kR2VvbWV0cnksXG4gIExhYmVsQ2FwdGlvbk1lYXN1cmVtZW50LFxuICBMYWJlbFNjcmVlbnNob3RPcHRpb25zLFxuICBNZWFzdXJlTGFiZWxDYXB0aW9uUGFyYW1zXG59IGZyb20gJy4vbGFiZWwtc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHtcbiAgYnVpbGRMYWJlbFN2ZyxcbiAgY29tcHV0ZUxhYmVsQmFuZCxcbiAgZXNjYXBlU3ZnVGV4dCxcbiAgbGFiZWxTY3JlZW5zaG90LFxuICBtZWFzdXJlTGFiZWxDYXB0aW9uXG59IGZyb20gJy4vbGFiZWwtc2NyZWVuc2hvdC5janMnO1xuZXhwb3J0IHR5cGUgeyBMaWJSZXNvbHZlciB9IGZyb20gJy4vbGliLXJlZ2lzdHJ5LmNqcyc7XG5leHBvcnQgeyByZWdpc3RlckxpYlJlc29sdmVyIH0gZnJvbSAnLi9saWItcmVnaXN0cnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgT2JzaWRpYW5SdW50aW1lVmVyc2lvbnMsXG4gIE9ic2lkaWFuVmVyc2lvbkNoYW5nZWxvZ1VybHMsXG4gIE9ic2lkaWFuVmVyc2lvbkRvd25sb2FkcyxcbiAgT2JzaWRpYW5WZXJzaW9uTWV0YWRhdGFcbn0gZnJvbSAnLi9vYnNpZGlhbi1tZXRhZGF0YS5janMnO1xuZXhwb3J0IHsgZ2V0VmVyc2lvbk1ldGFkYXRhIH0gZnJvbSAnLi9vYnNpZGlhbi1tZXRhZGF0YS5janMnO1xuZXhwb3J0IHtcbiAgQ0FUQUxZU1RfTEFURVNULFxuICBQVUJMSUNfTEFURVNUXG59IGZyb20gJy4vb2JzaWRpYW4tdmVyc2lvbi5janMnO1xuZXhwb3J0IHR5cGUgeyBPcGVuT2JzaWRpYW5TZXR0aW5nc1RhYlBhcmFtcyB9IGZyb20gJy4vb3Blbi1vYnNpZGlhbi1zZXR0aW5ncy10YWIuY2pzJztcbmV4cG9ydCB7IG9wZW5PYnNpZGlhblNldHRpbmdzVGFiIH0gZnJvbSAnLi9vcGVuLW9ic2lkaWFuLXNldHRpbmdzLXRhYi5janMnO1xuZXhwb3J0IHR5cGUgeyBPd25lZEluc3RhbmNlRXhpdGVkRXJyb3JDb25zdHJ1Y3RvclBhcmFtcyB9IGZyb20gJy4vb3duZWQtaW5zdGFuY2UtZXhpdGVkLWVycm9yLmNqcyc7XG5leHBvcnQgeyBPd25lZEluc3RhbmNlRXhpdGVkRXJyb3IgfSBmcm9tICcuL293bmVkLWluc3RhbmNlLWV4aXRlZC1lcnJvci5janMnO1xuZXhwb3J0IHR5cGUge1xuICBCdWlsZFN0YXR1c0JhckJhbmRGYWlsdXJlTWVzc2FnZVBhcmFtcyxcbiAgUGFpbnRPdXRTdGF0dXNCYXJPcHRpb25zLFxuICBSZXNvbHZlU3RhdHVzQmFyQmFuZFBhcmFtcyxcbiAgU3RhdHVzQmFyQmFuZENvbG9yLFxuICBTdGF0dXNCYXJCYW5kVmVyZGljdFxufSBmcm9tICcuL3BhaW50LW91dC1zdGF0dXMtYmFyLmNqcyc7XG5leHBvcnQge1xuICBidWlsZFN0YXR1c0JhckJhbmRGYWlsdXJlTWVzc2FnZSxcbiAgREVGQVVMVF9TVEFUVVNfQkFSX0VER0VfTUFSR0lOX0lOX1BJWEVMUyxcbiAgREVGQVVMVF9TVEFUVVNfQkFSX1NBTVBMRV9JTlNFVF9JTl9QSVhFTFMsXG4gIHBhaW50T3V0U3RhdHVzQmFyLFxuICByZXNvbHZlU3RhdHVzQmFyQmFuZFxufSBmcm9tICcuL3BhaW50LW91dC1zdGF0dXMtYmFyLmNqcyc7XG5leHBvcnQgdHlwZSB7IFBvbGxJbk9ic2lkaWFuUGFyYW1zIH0gZnJvbSAnLi9wb2xsLWluLW9ic2lkaWFuLmNqcyc7XG5leHBvcnQgeyBwb2xsSW5PYnNpZGlhbiB9IGZyb20gJy4vcG9sbC1pbi1vYnNpZGlhbi5janMnO1xuZXhwb3J0IHsgUmVuZGVyZXJGYWlsZWRUb0luaXRpYWxpemVFcnJvciB9IGZyb20gJy4vcmVuZGVyZXItZmFpbGVkLXRvLWluaXRpYWxpemUtZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHsgUmVzb2x2ZUVtdWxhdG9yRGV2aWNlSWRQYXJhbXMgfSBmcm9tICcuL3Jlc29sdmUtZW11bGF0b3ItZGV2aWNlLWlkLmNqcyc7XG5leHBvcnQgeyByZXNvbHZlRW11bGF0b3JEZXZpY2VJZCB9IGZyb20gJy4vcmVzb2x2ZS1lbXVsYXRvci1kZXZpY2UtaWQuY2pzJztcbmV4cG9ydCB0eXBlIHsgUnVuT2JzaWRpYW5WZXJzaW9uTWF0cml4UGFyYW1zIH0gZnJvbSAnLi9ydW4tdmVyc2lvbi1tYXRyaXguY2pzJztcbmV4cG9ydCB7IHJ1bk9ic2lkaWFuVmVyc2lvbk1hdHJpeCB9IGZyb20gJy4vcnVuLXZlcnNpb24tbWF0cml4LmNqcyc7XG5leHBvcnQgdHlwZSB7IFNpbGVudEFzYXJGYWxsYmFja0Vycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3NpbGVudC1hc2FyLWZhbGxiYWNrLWVycm9yLmNqcyc7XG5leHBvcnQgeyBTaWxlbnRBc2FyRmFsbGJhY2tFcnJvciB9IGZyb20gJy4vc2lsZW50LWFzYXItZmFsbGJhY2stZXJyb3IuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQnVpbGRTb2Z0S2V5Ym9hcmREaWFnbm9zdGljTWVzc2FnZVBhcmFtcyxcbiAgQ2hlY2tJc1NvZnRLZXlib2FyZFVwUGFyYW1zLFxuICBFbGVtZW50UmVjdCxcbiAgUmVzb2x2ZVNvZnRLZXlib2FyZFRhcFBvaW50c1BhcmFtcyxcbiAgU29mdEtleWJvYXJkVGFwUG9pbnQsXG4gIFNvZnRLZXlib2FyZFZpZXdwb3J0U25hcHNob3Rcbn0gZnJvbSAnLi9zb2Z0LWtleWJvYXJkLWdlb21ldHJ5LmNqcyc7XG5leHBvcnQge1xuICBidWlsZFNvZnRLZXlib2FyZERpYWdub3N0aWNNZXNzYWdlLFxuICBjaGVja0lzSW5wdXRNZXRob2RTaG93bixcbiAgY2hlY2tJc1NvZnRLZXlib2FyZFVwLFxuICBERUZBVUxUX01JTklNVU1fS0VZQk9BUkRfSEVJR0hUX0lOX1BJWEVMUyxcbiAgcGFyc2VJbnB1dE1ldGhvZFN0YXRlLFxuICByZXNvbHZlU29mdEtleWJvYXJkVGFwUG9pbnRzXG59IGZyb20gJy4vc29mdC1rZXlib2FyZC1nZW9tZXRyeS5janMnO1xuZXhwb3J0IHR5cGUge1xuICBSYWlzZVNvZnRLZXlib2FyZFBhcmFtcyxcbiAgVGFwRGV2aWNlUGFyYW1zXG59IGZyb20gJy4vc29mdC1rZXlib2FyZC5janMnO1xuZXhwb3J0IHtcbiAgcmFpc2VTb2Z0S2V5Ym9hcmQsXG4gIHRhcERldmljZVxufSBmcm9tICcuL3NvZnQta2V5Ym9hcmQuY2pzJztcbmV4cG9ydCB0eXBlIHsgU3RhbGVCdWlsZEVycm9yQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL3N0YWxlLWJ1aWxkLWVycm9yLmNqcyc7XG5leHBvcnQgeyBTdGFsZUJ1aWxkRXJyb3IgfSBmcm9tICcuL3N0YWxlLWJ1aWxkLWVycm9yLmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIFBvcHVsYXRlRmlsZUNvbnRlbnQsXG4gIFBvcHVsYXRlRmlsZXNQYXJhbXMsXG4gIFRlbXBvcmFyeVZhdWx0Q29uc3RydWN0b3JPcHRpb25zXG59IGZyb20gJy4vdGVtcG9yYXJ5LXZhdWx0LmNqcyc7XG5leHBvcnQgeyBUZW1wb3JhcnlWYXVsdCB9IGZyb20gJy4vdGVtcG9yYXJ5LXZhdWx0LmNqcyc7XG5leHBvcnQgdHlwZSB7XG4gIEFwcGl1bVNlc3Npb25JbmZvLFxuICBBcHBpdW1UcmFuc3BvcnRDb25maWdcbn0gZnJvbSAnLi90cmFuc3BvcnQtYXBwaXVtLmNqcyc7XG5leHBvcnQgeyBBcHBpdW1UcmFuc3BvcnQgfSBmcm9tICcuL3RyYW5zcG9ydC1hcHBpdW0uY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgRGVza3RvcENkcFRyYW5zcG9ydENvbmZpZyxcbiAgT3duZWRJbnN0YW5jZUFzYXIsXG4gIE93bmVkSW5zdGFuY2VDb25maWcsXG4gIE93bmVkSW5zdGFuY2VFbmRwb2ludFxufSBmcm9tICcuL3RyYW5zcG9ydC1kZXNrdG9wLWNkcC5janMnO1xuZXhwb3J0IHsgRGVza3RvcENkcFRyYW5zcG9ydCB9IGZyb20gJy4vdHJhbnNwb3J0LWRlc2t0b3AtY2RwLmNqcyc7XG5leHBvcnQgeyBjcmVhdGVUcmFuc3BvcnRGcm9tT3B0aW9ucyB9IGZyb20gJy4vdHJhbnNwb3J0LWZhY3RvcnkuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgT2JzaWRpYW5BbmRyb2lkQXBwaXVtVHJhbnNwb3J0T3B0aW9ucyxcbiAgT2JzaWRpYW5DZHBUcmFuc3BvcnRPcHRpb25zLFxuICBPYnNpZGlhblRyYW5zcG9ydE9wdGlvbnNcbn0gZnJvbSAnLi90cmFuc3BvcnQtb3B0aW9ucy5janMnO1xuZXhwb3J0IHsgY2hlY2tJc01vYmlsZVRyYW5zcG9ydCB9IGZyb20gJy4vdHJhbnNwb3J0LW9wdGlvbnMuY2pzJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29uc29sZUNhcHR1cmVIYW5kbGUsXG4gIE9ic2lkaWFuVHJhbnNwb3J0LFxuICBUcmFuc3BvcnRFdmFsT3B0aW9uc1xufSBmcm9tICcuL3RyYW5zcG9ydC5janMnO1xuZXhwb3J0IHtcbiAgcmVnaXN0ZXJWYXVsdCxcbiAgdW5yZWdpc3RlclZhdWx0XG59IGZyb20gJy4vdmF1bHQtcmVnaXN0cnkuY2pzJztcbmV4cG9ydCB0eXBlIHsgT2JzaWRpYW5WZXJzaW9uTWF0cml4RW50cnkgfSBmcm9tICcuL3ZlcnNpb24tbWF0cml4LmNqcyc7XG5leHBvcnQgeyBERUZBVUxUX09CU0lESUFOX1ZFUlNJT05fU1BFQ1MgfSBmcm9tICcuL3ZlcnNpb24tbWF0cml4LmNqcyc7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQSxpQkFJTztBQU9QLHdCQUtPO0FBTVAscUNBQW9DO0FBRXBDLHlDQUEwQztBQUsxQyxnQ0FLTztBQUVQLHVDQUF1QztBQUV2Qyw2Q0FBNkM7QUFDN0MsOEJBR087QUFLUCw0QkFBNkI7QUFLN0Isd0JBQTBCO0FBTTFCLDhCQUlPO0FBT1Asa0NBR087QUFNUCxpQ0FHTztBQUVQLDZCQUFrQztBQUNsQyw0Q0FBMkM7QUFFM0MsK0JBQXdDO0FBTXhDLG9DQUdPO0FBRVAscUNBSU87QUFNUCw2QkFLTztBQU1QLG9DQUE2QztBQUs3QyxnQ0FBdUM7QUFFdkMscUNBR087QUFDUCxzQkFBaUQ7QUFrQmpELDhCQUErQjtBQU0vQiw0QkFHTztBQUtQLHdCQUEwQjtBQUUxQiw2QkFBOEI7QUFFOUIsa0RBQWtEO0FBTWxELHFDQUE4QztBQUU5Qyw0Q0FBNEM7QUFRNUMsOEJBTU87QUFFUCwwQkFBb0M7QUFPcEMsK0JBQW1DO0FBQ25DLDhCQUdPO0FBRVAsd0NBQXdDO0FBRXhDLHlDQUF5QztBQVF6QyxrQ0FNTztBQUVQLDhCQUErQjtBQUMvQixpREFBZ0Q7QUFFaEQsd0NBQXdDO0FBRXhDLGdDQUF5QztBQUV6Qyx3Q0FBd0M7QUFTeEMsb0NBT087QUFLUCwyQkFHTztBQUVQLCtCQUFnQztBQU1oQyw2QkFBK0I7QUFLL0IsOEJBQWdDO0FBT2hDLG1DQUFvQztBQUNwQywrQkFBMkM7QUFNM0MsK0JBQXVDO0FBTXZDLDRCQUdPO0FBRVAsNEJBQStDOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -50,6 +50,8 @@ export type { ClickElementParams, ClickMouseParams, CommonArguments, CreateNoteP
50
50
  export { evalInObsidian } from './eval-in-obsidian.cjs';
51
51
  export type { ComputeFitToCanvasParams, FitScreenshotToCanvasOptions, FitToCanvasGeometry } from './fit-screenshot.cjs';
52
52
  export { computeFitToCanvas, fitScreenshotToCanvas } from './fit-screenshot.cjs';
53
+ export type { HiddenCaret, HideCaretOptions } from './hide-caret.cjs';
54
+ export { hideCaret } from './hide-caret.cjs';
53
55
  export type { HideVaultNameOptions } from './hide-vault-name.cjs';
54
56
  export { hideVaultName } from './hide-vault-name.cjs';
55
57
  export type { IncompatibleInstallerVersionErrorConstructorParams } from './incompatible-installer-version-error.cjs';
@@ -21,7 +21,7 @@ __export(library_exports, {
21
21
  LIBRARY_VERSION: () => LIBRARY_VERSION
22
22
  });
23
23
  module.exports = __toCommonJS(library_exports);
24
- const LIBRARY_VERSION = false ? "dev" : "17.0.2";
24
+ const LIBRARY_VERSION = false ? "dev" : "17.1.1";
25
25
  // Annotate the CommonJS export names for ESM import in node:
26
26
  0 && (module.exports = {
27
27
  LIBRARY_VERSION