@mnaoumov/obsidian-lib 10.6.0 → 10.7.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.
Files changed (77) hide show
  1. package/command-handlers/open-discussion-command-handler/package.json +6 -0
  2. package/command-handlers/open-feature-request-command-handler/package.json +6 -0
  3. package/command-handlers/open-git-hub-command-handler/package.json +6 -0
  4. package/components/style-sheet-component/package.json +6 -0
  5. package/dist/lib/cjs/__merged.cjs +42 -1
  6. package/dist/lib/cjs/__merged.d.cts +9 -0
  7. package/dist/lib/cjs/broken-link-candidates.cjs +366 -0
  8. package/dist/lib/cjs/broken-link-candidates.d.cts +181 -0
  9. package/dist/lib/cjs/command-handlers/index.cjs +10 -1
  10. package/dist/lib/cjs/command-handlers/index.d.cts +3 -0
  11. package/dist/lib/cjs/command-handlers/open-bug-report-command-handler.cjs +9 -12
  12. package/dist/lib/cjs/command-handlers/open-bug-report-command-handler.d.cts +6 -8
  13. package/dist/lib/cjs/command-handlers/open-discussion-command-handler.cjs +127 -0
  14. package/dist/lib/cjs/command-handlers/open-discussion-command-handler.d.cts +45 -0
  15. package/dist/lib/cjs/command-handlers/open-feature-request-command-handler.cjs +119 -0
  16. package/dist/lib/cjs/command-handlers/open-feature-request-command-handler.d.cts +33 -0
  17. package/dist/lib/cjs/command-handlers/open-git-hub-command-handler.cjs +121 -0
  18. package/dist/lib/cjs/command-handlers/open-git-hub-command-handler.d.cts +43 -0
  19. package/dist/lib/cjs/components/index.cjs +4 -1
  20. package/dist/lib/cjs/components/index.d.cts +1 -0
  21. package/dist/lib/cjs/components/style-sheet-component.cjs +198 -0
  22. package/dist/lib/cjs/components/style-sheet-component.d.cts +79 -0
  23. package/dist/lib/cjs/data-stores/data-store-transport.cjs +7 -4
  24. package/dist/lib/cjs/data-stores/data-store-transport.d.cts +1 -1
  25. package/dist/lib/cjs/data-stores/shared-data-store.cjs +1 -1
  26. package/dist/lib/cjs/data-stores/shared-data-store.d.cts +1 -1
  27. package/dist/lib/cjs/desktop-git-runner.cjs +117 -0
  28. package/dist/lib/cjs/desktop-git-runner.d.cts +17 -0
  29. package/dist/lib/cjs/editor-suggest.cjs +2 -3
  30. package/dist/lib/cjs/feature-request.cjs +115 -0
  31. package/dist/lib/cjs/feature-request.d.cts +54 -0
  32. package/dist/lib/cjs/generated-during-build.cjs +1 -1
  33. package/dist/lib/cjs/git-hub-discussion.cjs +101 -0
  34. package/dist/lib/cjs/git-hub-discussion.d.cts +28 -0
  35. package/dist/lib/cjs/git-rename-history.cjs +148 -0
  36. package/dist/lib/cjs/git-rename-history.d.cts +43 -0
  37. package/dist/lib/cjs/index.cjs +16 -1
  38. package/dist/lib/cjs/index.d.cts +5 -0
  39. package/dist/lib/cjs/vault.cjs +2 -2
  40. package/dist/lib/cjs/vault.d.cts +3 -1
  41. package/dist/lib/esm/__merged.d.mts +9 -0
  42. package/dist/lib/esm/__merged.mjs +41 -1
  43. package/dist/lib/esm/broken-link-candidates.d.mts +181 -0
  44. package/dist/lib/esm/broken-link-candidates.mjs +275 -0
  45. package/dist/lib/esm/command-handlers/index.d.mts +3 -0
  46. package/dist/lib/esm/command-handlers/index.mjs +7 -1
  47. package/dist/lib/esm/command-handlers/open-bug-report-command-handler.d.mts +6 -8
  48. package/dist/lib/esm/command-handlers/open-bug-report-command-handler.mjs +9 -12
  49. package/dist/lib/esm/command-handlers/open-discussion-command-handler.d.mts +45 -0
  50. package/dist/lib/esm/command-handlers/open-discussion-command-handler.mjs +39 -0
  51. package/dist/lib/esm/command-handlers/open-feature-request-command-handler.d.mts +33 -0
  52. package/dist/lib/esm/command-handlers/open-feature-request-command-handler.mjs +31 -0
  53. package/dist/lib/esm/command-handlers/open-git-hub-command-handler.d.mts +43 -0
  54. package/dist/lib/esm/command-handlers/open-git-hub-command-handler.mjs +33 -0
  55. package/dist/lib/esm/components/index.d.mts +1 -0
  56. package/dist/lib/esm/components/index.mjs +3 -1
  57. package/dist/lib/esm/components/style-sheet-component.d.mts +79 -0
  58. package/dist/lib/esm/components/style-sheet-component.mjs +109 -0
  59. package/dist/lib/esm/data-stores/data-store-transport.d.mts +1 -1
  60. package/dist/lib/esm/data-stores/data-store-transport.mjs +7 -4
  61. package/dist/lib/esm/data-stores/shared-data-store.d.mts +1 -1
  62. package/dist/lib/esm/data-stores/shared-data-store.mjs +1 -1
  63. package/dist/lib/esm/desktop-git-runner.d.mts +17 -0
  64. package/dist/lib/esm/desktop-git-runner.mjs +19 -0
  65. package/dist/lib/esm/editor-suggest.mjs +2 -3
  66. package/dist/lib/esm/feature-request.d.mts +54 -0
  67. package/dist/lib/esm/feature-request.mjs +25 -0
  68. package/dist/lib/esm/generated-during-build.mjs +1 -1
  69. package/dist/lib/esm/git-hub-discussion.d.mts +28 -0
  70. package/dist/lib/esm/git-hub-discussion.mjs +13 -0
  71. package/dist/lib/esm/git-rename-history.d.mts +43 -0
  72. package/dist/lib/esm/git-rename-history.mjs +59 -0
  73. package/dist/lib/esm/index.d.mts +5 -0
  74. package/dist/lib/esm/index.mjs +11 -1
  75. package/dist/lib/esm/vault.d.mts +3 -1
  76. package/dist/lib/esm/vault.mjs +2 -2
  77. package/package.json +2 -2
@@ -91,16 +91,12 @@ __export(open_bug_report_command_handler_exports, {
91
91
  });
92
92
  module.exports = __toCommonJS(open_bug_report_command_handler_exports);
93
93
  var import_bug_report = require('../bug-report.cjs');
94
- var import_global_command_handler = require('./global-command-handler.cjs');
95
- class OpenBugReportCommandHandler extends import_global_command_handler.GlobalCommandHandler {
94
+ var import_open_git_hub_command_handler = require('./open-git-hub-command-handler.cjs');
95
+ class OpenBugReportCommandHandler extends import_open_git_hub_command_handler.OpenGitHubCommandHandler {
96
96
  /**
97
97
  * The Obsidian app instance.
98
98
  */
99
99
  app;
100
- /**
101
- * The plugin's GitHub repository, as `owner/name`.
102
- */
103
- gitHubRepo;
104
100
  /**
105
101
  * The id of the reporting plugin.
106
102
  */
@@ -112,28 +108,29 @@ class OpenBugReportCommandHandler extends import_global_command_handler.GlobalCo
112
108
  */
113
109
  constructor(params) {
114
110
  super({
111
+ gitHubRepo: params.gitHubRepo,
115
112
  icon: "bug",
116
113
  id: "report-bug",
117
114
  name: "Report a bug"
118
115
  });
119
116
  this.app = params.app;
120
117
  this.pluginId = params.pluginId;
121
- this.gitHubRepo = params.gitHubRepo;
122
118
  }
123
119
  /**
124
- * Executes the command, opening the prefilled issue form in the browser.
120
+ * Builds the prefilled bug-report URL.
121
+ *
122
+ * @returns The link.
125
123
  */
126
- async execute() {
127
- const url = await (0, import_bug_report.getBugReportIssueFormUrl)({
124
+ async getUrl() {
125
+ return (0, import_bug_report.getBugReportIssueFormUrl)({
128
126
  app: this.app,
129
127
  gitHubRepo: this.gitHubRepo,
130
128
  pluginId: this.pluginId
131
129
  });
132
- window.open(url, "_blank");
133
130
  }
134
131
  }
135
132
  // Annotate the CommonJS export names for ESM import in node:
136
133
  0 && (module.exports = {
137
134
  OpenBugReportCommandHandler
138
135
  });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL29wZW4tYnVnLXJlcG9ydC1jb21tYW5kLWhhbmRsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEhhbmRsZXMgdGhlIFwiUmVwb3J0IGEgYnVnXCIgY29tbWFuZC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgZ2V0QnVnUmVwb3J0SXNzdWVGb3JtVXJsIH0gZnJvbSAnLi4vYnVnLXJlcG9ydC50cyc7XG5pbXBvcnQgeyBHbG9iYWxDb21tYW5kSGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWNvbW1hbmQtaGFuZGxlci50cyc7XG5cbi8qKlxuICogQ29uc3RydWN0b3IgcGFyYW1ldGVycyBmb3Ige0BsaW5rIE9wZW5CdWdSZXBvcnRDb21tYW5kSGFuZGxlcn0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3BlbkJ1Z1JlcG9ydENvbW1hbmRIYW5kbGVyQ29uc3RydWN0b3JQYXJhbXMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luJ3MgR2l0SHViIHJlcG9zaXRvcnksIGFzIGBvd25lci9uYW1lYC5cbiAgICovXG4gIHJlYWRvbmx5IGdpdEh1YlJlcG86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGlkIG9mIHRoZSByZXBvcnRpbmcgcGx1Z2luLlxuICAgKi9cbiAgcmVhZG9ubHkgcGx1Z2luSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIGNvbW1hbmQgaGFuZGxlciB0aGF0IG9wZW5zIHRoZSBwbHVnaW4ncyBidWctcmVwb3J0IGlzc3VlIGZvcm0gb24gR2l0SHViLCBwcmVmaWxsZWQgd2l0aCB0aGVcbiAqIGVudmlyb25tZW50LiBTZWUge0BsaW5rIGdldEJ1Z1JlcG9ydElzc3VlRm9ybVVybH0gZm9yIHRoZSBmaWVsZCBpZHMgdGhlIGZvcm0gbXVzdCB1c2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBPcGVuQnVnUmVwb3J0Q29tbWFuZEhhbmRsZXIgZXh0ZW5kcyBHbG9iYWxDb21tYW5kSGFuZGxlciB7XG4gIC8qKlxuICAgKiBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luJ3MgR2l0SHViIHJlcG9zaXRvcnksIGFzIGBvd25lci9uYW1lYC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBnaXRIdWJSZXBvOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgcmVwb3J0aW5nIHBsdWdpbi5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBwbHVnaW5JZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQ29uc3RydWN0b3IgcGFyYW1ldGVycy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IE9wZW5CdWdSZXBvcnRDb21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgaWNvbjogJ2J1ZycsXG4gICAgICBpZDogJ3JlcG9ydC1idWcnLFxuICAgICAgbmFtZTogJ1JlcG9ydCBhIGJ1ZydcbiAgICB9KTtcblxuICAgIHRoaXMuYXBwID0gcGFyYW1zLmFwcDtcbiAgICB0aGlzLnBsdWdpbklkID0gcGFyYW1zLnBsdWdpbklkO1xuICAgIHRoaXMuZ2l0SHViUmVwbyA9IHBhcmFtcy5naXRIdWJSZXBvO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGVzIHRoZSBjb21tYW5kLCBvcGVuaW5nIHRoZSBwcmVmaWxsZWQgaXNzdWUgZm9ybSBpbiB0aGUgYnJvd3Nlci5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHVybCA9IGF3YWl0IGdldEJ1Z1JlcG9ydElzc3VlRm9ybVVybCh7XG4gICAgICBhcHA6IHRoaXMuYXBwLFxuICAgICAgZ2l0SHViUmVwbzogdGhpcy5naXRIdWJSZXBvLFxuICAgICAgcGx1Z2luSWQ6IHRoaXMucGx1Z2luSWRcbiAgICB9KTtcbiAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUEsd0JBQXlDO0FBQ3pDLG9DQUFxQztBQTBCOUIsTUFBTSxvQ0FBb0MsbURBQXFCO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJakQ7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9aLFlBQVksUUFBc0Q7QUFDdkUsVUFBTTtBQUFBLE1BQ0osTUFBTTtBQUFBLE1BQ04sSUFBSTtBQUFBLE1BQ0osTUFBTTtBQUFBLElBQ1IsQ0FBQztBQUVELFNBQUssTUFBTSxPQUFPO0FBQ2xCLFNBQUssV0FBVyxPQUFPO0FBQ3ZCLFNBQUssYUFBYSxPQUFPO0FBQUEsRUFDM0I7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE1BQXNCLFVBQXlCO0FBQzdDLFVBQU0sTUFBTSxVQUFNLDRDQUF5QjtBQUFBLE1BQ3pDLEtBQUssS0FBSztBQUFBLE1BQ1YsWUFBWSxLQUFLO0FBQUEsTUFDakIsVUFBVSxLQUFLO0FBQUEsSUFDakIsQ0FBQztBQUNELFdBQU8sS0FBSyxLQUFLLFFBQVE7QUFBQSxFQUMzQjtBQUNGOyIsIm5hbWVzIjpbXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL29wZW4tYnVnLXJlcG9ydC1jb21tYW5kLWhhbmRsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEhhbmRsZXMgdGhlIFwiUmVwb3J0IGEgYnVnXCIgY29tbWFuZC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgZ2V0QnVnUmVwb3J0SXNzdWVGb3JtVXJsIH0gZnJvbSAnLi4vYnVnLXJlcG9ydC50cyc7XG5pbXBvcnQgeyBPcGVuR2l0SHViQ29tbWFuZEhhbmRsZXIgfSBmcm9tICcuL29wZW4tZ2l0LWh1Yi1jb21tYW5kLWhhbmRsZXIudHMnO1xuXG4vKipcbiAqIENvbnN0cnVjdG9yIHBhcmFtZXRlcnMgZm9yIHtAbGluayBPcGVuQnVnUmVwb3J0Q29tbWFuZEhhbmRsZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9wZW5CdWdSZXBvcnRDb21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIHBsdWdpbidzIEdpdEh1YiByZXBvc2l0b3J5LCBhcyBgb3duZXIvbmFtZWAuXG4gICAqL1xuICByZWFkb25seSBnaXRIdWJSZXBvOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgcmVwb3J0aW5nIHBsdWdpbi5cbiAgICovXG4gIHJlYWRvbmx5IHBsdWdpbklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBjb21tYW5kIGhhbmRsZXIgdGhhdCBvcGVucyB0aGUgcGx1Z2luJ3MgYnVnLXJlcG9ydCBpc3N1ZSBmb3JtIG9uIEdpdEh1YiwgcHJlZmlsbGVkIHdpdGggdGhlXG4gKiBlbnZpcm9ubWVudC4gU2VlIHtAbGluayBnZXRCdWdSZXBvcnRJc3N1ZUZvcm1Vcmx9IGZvciB0aGUgZmllbGQgaWRzIHRoZSBmb3JtIG11c3QgdXNlLlxuICovXG5leHBvcnQgY2xhc3MgT3BlbkJ1Z1JlcG9ydENvbW1hbmRIYW5kbGVyIGV4dGVuZHMgT3BlbkdpdEh1YkNvbW1hbmRIYW5kbGVyIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgcmVwb3J0aW5nIHBsdWdpbi5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBwbHVnaW5JZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQ29uc3RydWN0b3IgcGFyYW1ldGVycy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IE9wZW5CdWdSZXBvcnRDb21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgZ2l0SHViUmVwbzogcGFyYW1zLmdpdEh1YlJlcG8sXG4gICAgICBpY29uOiAnYnVnJyxcbiAgICAgIGlkOiAncmVwb3J0LWJ1ZycsXG4gICAgICBuYW1lOiAnUmVwb3J0IGEgYnVnJ1xuICAgIH0pO1xuXG4gICAgdGhpcy5hcHAgPSBwYXJhbXMuYXBwO1xuICAgIHRoaXMucGx1Z2luSWQgPSBwYXJhbXMucGx1Z2luSWQ7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGRzIHRoZSBwcmVmaWxsZWQgYnVnLXJlcG9ydCBVUkwuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBsaW5rLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGdldFVybCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBnZXRCdWdSZXBvcnRJc3N1ZUZvcm1Vcmwoe1xuICAgICAgYXBwOiB0aGlzLmFwcCxcbiAgICAgIGdpdEh1YlJlcG86IHRoaXMuZ2l0SHViUmVwbyxcbiAgICAgIHBsdWdpbklkOiB0aGlzLnBsdWdpbklkXG4gICAgfSk7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBLHdCQUF5QztBQUN6QywwQ0FBeUM7QUEwQmxDLE1BQU0sb0NBQW9DLDZEQUF5QjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBSXJEO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9aLFlBQVksUUFBc0Q7QUFDdkUsVUFBTTtBQUFBLE1BQ0osWUFBWSxPQUFPO0FBQUEsTUFDbkIsTUFBTTtBQUFBLE1BQ04sSUFBSTtBQUFBLE1BQ0osTUFBTTtBQUFBLElBQ1IsQ0FBQztBQUVELFNBQUssTUFBTSxPQUFPO0FBQ2xCLFNBQUssV0FBVyxPQUFPO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxNQUF5QixTQUEwQjtBQUNqRCxlQUFPLDRDQUF5QjtBQUFBLE1BQzlCLEtBQUssS0FBSztBQUFBLE1BQ1YsWUFBWSxLQUFLO0FBQUEsTUFDakIsVUFBVSxLQUFLO0FBQUEsSUFDakIsQ0FBQztBQUFBLEVBQ0g7QUFDRjsiLCJuYW1lcyI6W119
@@ -5,7 +5,7 @@
5
5
  * Handles the "Report a bug" command.
6
6
  */
7
7
  import type { App } from 'obsidian' with { 'resolution-mode': 'import' };
8
- import { GlobalCommandHandler } from './global-command-handler.cjs';
8
+ import { OpenGitHubCommandHandler } from './open-git-hub-command-handler.cjs';
9
9
  /**
10
10
  * Constructor parameters for {@link OpenBugReportCommandHandler}.
11
11
  */
@@ -27,15 +27,11 @@ export interface OpenBugReportCommandHandlerConstructorParams {
27
27
  * A command handler that opens the plugin's bug-report issue form on GitHub, prefilled with the
28
28
  * environment. See {@link getBugReportIssueFormUrl} for the field ids the form must use.
29
29
  */
30
- export declare class OpenBugReportCommandHandler extends GlobalCommandHandler {
30
+ export declare class OpenBugReportCommandHandler extends OpenGitHubCommandHandler {
31
31
  /**
32
32
  * The Obsidian app instance.
33
33
  */
34
34
  protected readonly app: App;
35
- /**
36
- * The plugin's GitHub repository, as `owner/name`.
37
- */
38
- protected readonly gitHubRepo: string;
39
35
  /**
40
36
  * The id of the reporting plugin.
41
37
  */
@@ -47,7 +43,9 @@ export declare class OpenBugReportCommandHandler extends GlobalCommandHandler {
47
43
  */
48
44
  constructor(params: OpenBugReportCommandHandlerConstructorParams);
49
45
  /**
50
- * Executes the command, opening the prefilled issue form in the browser.
46
+ * Builds the prefilled bug-report URL.
47
+ *
48
+ * @returns The link.
51
49
  */
52
- execute(): Promise<void>;
50
+ protected getUrl(): Promise<string>;
53
51
  }
@@ -0,0 +1,127 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+ (function patchObsidianRequire() {
6
+ const originalRequire = require;
7
+ if (!originalRequire || originalRequire.__isPatched) {
8
+ return;
9
+ }
10
+ require = Object.assign(
11
+ (id) => requirePatched(id),
12
+ originalRequire,
13
+ {
14
+ __isPatched: true
15
+ }
16
+ );
17
+ function extractDefault($module) {
18
+ return $module && $module.__esModule && "default" in $module ? $module.default : $module;
19
+ }
20
+ const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
21
+ "@codemirror/autocomplete",
22
+ "@codemirror/collab",
23
+ "@codemirror/commands",
24
+ "@codemirror/language",
25
+ "@codemirror/lint",
26
+ "@codemirror/search",
27
+ "@codemirror/state",
28
+ "@codemirror/text",
29
+ "@codemirror/view",
30
+ "@lezer/common",
31
+ "@lezer/highlight",
32
+ "@lezer/lr",
33
+ "obsidian"
34
+ ]);
35
+ const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
36
+ "@codemirror/closebrackets",
37
+ "@codemirror/comment",
38
+ "@codemirror/fold",
39
+ "@codemirror/gutter",
40
+ "@codemirror/highlight",
41
+ "@codemirror/history",
42
+ "@codemirror/matchbrackets",
43
+ "@codemirror/panel",
44
+ "@codemirror/rangeset",
45
+ "@codemirror/rectangular-selection",
46
+ "@codemirror/stream-parser",
47
+ "@codemirror/tooltip"
48
+ ]);
49
+ function requirePatched(id) {
50
+ if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
51
+ return originalRequire?.(id);
52
+ }
53
+ const app = globalThis.app;
54
+ if (app?.isMobile) {
55
+ if (id === "process" || id === "node:process") {
56
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
57
+ return process;
58
+ }
59
+ } else {
60
+ const $module = originalRequire?.(id);
61
+ if ($module) {
62
+ return extractDefault($module);
63
+ }
64
+ }
65
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
66
+ return {};
67
+ }
68
+ })();
69
+
70
+ "use strict";
71
+ var __defProp = Object.defineProperty;
72
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
73
+ var __getOwnPropNames = Object.getOwnPropertyNames;
74
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
75
+ var __export = (target, all) => {
76
+ for (var name in all)
77
+ __defProp(target, name, { get: all[name], enumerable: true });
78
+ };
79
+ var __copyProps = (to, from, except, desc) => {
80
+ if (from && typeof from === "object" || typeof from === "function") {
81
+ for (let key of __getOwnPropNames(from))
82
+ if (!__hasOwnProp.call(to, key) && key !== except)
83
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
84
+ }
85
+ return to;
86
+ };
87
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
88
+ var open_discussion_command_handler_exports = {};
89
+ __export(open_discussion_command_handler_exports, {
90
+ OpenDiscussionCommandHandler: () => OpenDiscussionCommandHandler
91
+ });
92
+ module.exports = __toCommonJS(open_discussion_command_handler_exports);
93
+ var import_git_hub_discussion = require('../git-hub-discussion.cjs');
94
+ var import_open_git_hub_command_handler = require('./open-git-hub-command-handler.cjs');
95
+ class OpenDiscussionCommandHandler extends import_open_git_hub_command_handler.OpenGitHubCommandHandler {
96
+ params;
97
+ /**
98
+ * Constructs a new instance.
99
+ *
100
+ * @param params - Constructor parameters.
101
+ */
102
+ constructor(params) {
103
+ super({ gitHubRepo: params.gitHubRepo, icon: "messages-square", id: "start-discussion", name: "Start a discussion" });
104
+ this.params = params;
105
+ }
106
+ /**
107
+ * Checks the repository's declared Discussions capability.
108
+ *
109
+ * @returns Whether the command is available.
110
+ */
111
+ canExecute() {
112
+ return this.params.isDiscussionsEnabled;
113
+ }
114
+ /**
115
+ * Builds the new-discussion URL.
116
+ *
117
+ * @returns The link.
118
+ */
119
+ getUrl() {
120
+ return (0, import_git_hub_discussion.getGitHubDiscussionUrl)(this.params);
121
+ }
122
+ }
123
+ // Annotate the CommonJS export names for ESM import in node:
124
+ 0 && (module.exports = {
125
+ OpenDiscussionCommandHandler
126
+ });
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL29wZW4tZGlzY3Vzc2lvbi1jb21tYW5kLWhhbmRsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEhhbmRsZXMgdGhlIFwiU3RhcnQgYSBkaXNjdXNzaW9uXCIgY29tbWFuZC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEdldEdpdEh1YkRpc2N1c3Npb25VcmxQYXJhbXMgfSBmcm9tICcuLi9naXQtaHViLWRpc2N1c3Npb24udHMnO1xuXG5pbXBvcnQgeyBnZXRHaXRIdWJEaXNjdXNzaW9uVXJsIH0gZnJvbSAnLi4vZ2l0LWh1Yi1kaXNjdXNzaW9uLnRzJztcbmltcG9ydCB7IE9wZW5HaXRIdWJDb21tYW5kSGFuZGxlciB9IGZyb20gJy4vb3Blbi1naXQtaHViLWNvbW1hbmQtaGFuZGxlci50cyc7XG5cbi8qKlxuICogQ29uc3RydWN0b3IgcGFyYW1ldGVycyBmb3Ige0BsaW5rIE9wZW5EaXNjdXNzaW9uQ29tbWFuZEhhbmRsZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE9wZW5EaXNjdXNzaW9uQ29tbWFuZEhhbmRsZXJDb25zdHJ1Y3RvclBhcmFtcyBleHRlbmRzIEdldEdpdEh1YkRpc2N1c3Npb25VcmxQYXJhbXMge1xuICAvKipcbiAgICogV2hldGhlciB0aGUgcmVwb3NpdG9yeSBoYXMgRGlzY3Vzc2lvbnMgZW5hYmxlZC4gV2hlbiBgZmFsc2VgLCB0aGUgY29tbWFuZCBpcyB1bmF2YWlsYWJsZSBhbmRcbiAgICogZXhlY3V0aW9uIGRvZXMgbm90IG9wZW4gYSBicm93c2VyLiBQcmVmZXIgb21pdHRpbmcgcmVnaXN0cmF0aW9uIGFsdG9nZXRoZXIgaW4gdGhhdCBjYXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgaXNEaXNjdXNzaW9uc0VuYWJsZWQ6IGJvb2xlYW47XG59XG5cbi8qKlxuICogT3BlbnMgYSBuZXcgZGlzY3Vzc2lvbiBpbiB0aGUgcGx1Z2luJ3MgcmVwb3NpdG9yeS4gVW5hdmFpbGFibGUgd2hlbiBEaXNjdXNzaW9ucyBpcyBkaXNhYmxlZC5cbiAqXG4gKiBTZWUgdGhlIFtjb21tdW5pdHkgY29tbWFuZHMgZ3VpZGVdKGh0dHBzOi8vbW5hb3Vtb3YuZGV2L29ic2lkaWFuLWxpYi9ndWlkZXMvY29tbXVuaXR5LWNvbW1hbmRzLylcbiAqIGFuZCBbYmVoYXZpb3JhbCB0ZXN0c10oaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWxpYi9ibG9iL21haW4vc3JjL2NvbW1hbmQtaGFuZGxlcnMvb3Blbi1kaXNjdXNzaW9uLWNvbW1hbmQtaGFuZGxlci50ZXN0LnRzKS5cbiAqL1xuZXhwb3J0IGNsYXNzIE9wZW5EaXNjdXNzaW9uQ29tbWFuZEhhbmRsZXIgZXh0ZW5kcyBPcGVuR2l0SHViQ29tbWFuZEhhbmRsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHBhcmFtczogT3BlbkRpc2N1c3Npb25Db21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQ29uc3RydWN0b3IgcGFyYW1ldGVycy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IE9wZW5EaXNjdXNzaW9uQ29tbWFuZEhhbmRsZXJDb25zdHJ1Y3RvclBhcmFtcykge1xuICAgIHN1cGVyKHsgZ2l0SHViUmVwbzogcGFyYW1zLmdpdEh1YlJlcG8sIGljb246ICdtZXNzYWdlcy1zcXVhcmUnLCBpZDogJ3N0YXJ0LWRpc2N1c3Npb24nLCBuYW1lOiAnU3RhcnQgYSBkaXNjdXNzaW9uJyB9KTtcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgdGhlIHJlcG9zaXRvcnkncyBkZWNsYXJlZCBEaXNjdXNzaW9ucyBjYXBhYmlsaXR5LlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGlzIGF2YWlsYWJsZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnBhcmFtcy5pc0Rpc2N1c3Npb25zRW5hYmxlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIG5ldy1kaXNjdXNzaW9uIFVSTC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGxpbmsuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0VXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldEdpdEh1YkRpc2N1c3Npb25VcmwodGhpcy5wYXJhbXMpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSxnQ0FBdUM7QUFDdkMsMENBQXlDO0FBbUJsQyxNQUFNLHFDQUFxQyw2REFBeUI7QUFBQSxFQUN4RDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9WLFlBQVksUUFBdUQ7QUFDeEUsVUFBTSxFQUFFLFlBQVksT0FBTyxZQUFZLE1BQU0sbUJBQW1CLElBQUksb0JBQW9CLE1BQU0scUJBQXFCLENBQUM7QUFDcEgsU0FBSyxTQUFTO0FBQUEsRUFDaEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbUIsYUFBc0I7QUFDdkMsV0FBTyxLQUFLLE9BQU87QUFBQSxFQUNyQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9tQixTQUFpQjtBQUNsQyxlQUFPLGtEQUF1QixLQUFLLE1BQU07QUFBQSxFQUMzQztBQUNGOyIsIm5hbWVzIjpbXX0=
@@ -0,0 +1,45 @@
1
+ /// <reference path="../library-references.d.cts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Handles the "Start a discussion" command.
6
+ */
7
+ import type { GetGitHubDiscussionUrlParams } from '../git-hub-discussion.cjs';
8
+ import { OpenGitHubCommandHandler } from './open-git-hub-command-handler.cjs';
9
+ /**
10
+ * Constructor parameters for {@link OpenDiscussionCommandHandler}.
11
+ */
12
+ export interface OpenDiscussionCommandHandlerConstructorParams extends GetGitHubDiscussionUrlParams {
13
+ /**
14
+ * Whether the repository has Discussions enabled. When `false`, the command is unavailable and
15
+ * execution does not open a browser. Prefer omitting registration altogether in that case.
16
+ */
17
+ readonly isDiscussionsEnabled: boolean;
18
+ }
19
+ /**
20
+ * Opens a new discussion in the plugin's repository. Unavailable when Discussions is disabled.
21
+ *
22
+ * See the [community commands guide](https://mnaoumov.dev/obsidian-lib/guides/community-commands/)
23
+ * and [behavioral tests](https://github.com/mnaoumov/obsidian-lib/blob/main/src/command-handlers/open-discussion-command-handler.test.ts).
24
+ */
25
+ export declare class OpenDiscussionCommandHandler extends OpenGitHubCommandHandler {
26
+ private readonly params;
27
+ /**
28
+ * Constructs a new instance.
29
+ *
30
+ * @param params - Constructor parameters.
31
+ */
32
+ constructor(params: OpenDiscussionCommandHandlerConstructorParams);
33
+ /**
34
+ * Checks the repository's declared Discussions capability.
35
+ *
36
+ * @returns Whether the command is available.
37
+ */
38
+ protected canExecute(): boolean;
39
+ /**
40
+ * Builds the new-discussion URL.
41
+ *
42
+ * @returns The link.
43
+ */
44
+ protected getUrl(): string;
45
+ }
@@ -0,0 +1,119 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+ (function patchObsidianRequire() {
6
+ const originalRequire = require;
7
+ if (!originalRequire || originalRequire.__isPatched) {
8
+ return;
9
+ }
10
+ require = Object.assign(
11
+ (id) => requirePatched(id),
12
+ originalRequire,
13
+ {
14
+ __isPatched: true
15
+ }
16
+ );
17
+ function extractDefault($module) {
18
+ return $module && $module.__esModule && "default" in $module ? $module.default : $module;
19
+ }
20
+ const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
21
+ "@codemirror/autocomplete",
22
+ "@codemirror/collab",
23
+ "@codemirror/commands",
24
+ "@codemirror/language",
25
+ "@codemirror/lint",
26
+ "@codemirror/search",
27
+ "@codemirror/state",
28
+ "@codemirror/text",
29
+ "@codemirror/view",
30
+ "@lezer/common",
31
+ "@lezer/highlight",
32
+ "@lezer/lr",
33
+ "obsidian"
34
+ ]);
35
+ const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
36
+ "@codemirror/closebrackets",
37
+ "@codemirror/comment",
38
+ "@codemirror/fold",
39
+ "@codemirror/gutter",
40
+ "@codemirror/highlight",
41
+ "@codemirror/history",
42
+ "@codemirror/matchbrackets",
43
+ "@codemirror/panel",
44
+ "@codemirror/rangeset",
45
+ "@codemirror/rectangular-selection",
46
+ "@codemirror/stream-parser",
47
+ "@codemirror/tooltip"
48
+ ]);
49
+ function requirePatched(id) {
50
+ if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
51
+ return originalRequire?.(id);
52
+ }
53
+ const app = globalThis.app;
54
+ if (app?.isMobile) {
55
+ if (id === "process" || id === "node:process") {
56
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
57
+ return process;
58
+ }
59
+ } else {
60
+ const $module = originalRequire?.(id);
61
+ if ($module) {
62
+ return extractDefault($module);
63
+ }
64
+ }
65
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
66
+ return {};
67
+ }
68
+ })();
69
+
70
+ "use strict";
71
+ var __defProp = Object.defineProperty;
72
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
73
+ var __getOwnPropNames = Object.getOwnPropertyNames;
74
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
75
+ var __export = (target, all) => {
76
+ for (var name in all)
77
+ __defProp(target, name, { get: all[name], enumerable: true });
78
+ };
79
+ var __copyProps = (to, from, except, desc) => {
80
+ if (from && typeof from === "object" || typeof from === "function") {
81
+ for (let key of __getOwnPropNames(from))
82
+ if (!__hasOwnProp.call(to, key) && key !== except)
83
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
84
+ }
85
+ return to;
86
+ };
87
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
88
+ var open_feature_request_command_handler_exports = {};
89
+ __export(open_feature_request_command_handler_exports, {
90
+ OpenFeatureRequestCommandHandler: () => OpenFeatureRequestCommandHandler
91
+ });
92
+ module.exports = __toCommonJS(open_feature_request_command_handler_exports);
93
+ var import_feature_request = require('../feature-request.cjs');
94
+ var import_open_git_hub_command_handler = require('./open-git-hub-command-handler.cjs');
95
+ class OpenFeatureRequestCommandHandler extends import_open_git_hub_command_handler.OpenGitHubCommandHandler {
96
+ params;
97
+ /**
98
+ * Constructs a new instance.
99
+ *
100
+ * @param params - Constructor parameters.
101
+ */
102
+ constructor(params) {
103
+ super({ gitHubRepo: params.gitHubRepo, icon: "lightbulb", id: "request-feature", name: "Request a feature" });
104
+ this.params = params;
105
+ }
106
+ /**
107
+ * Builds the prefilled feature-request URL.
108
+ *
109
+ * @returns The link.
110
+ */
111
+ getUrl() {
112
+ return (0, import_feature_request.getFeatureRequestIssueFormUrl)(this.params);
113
+ }
114
+ }
115
+ // Annotate the CommonJS export names for ESM import in node:
116
+ 0 && (module.exports = {
117
+ OpenFeatureRequestCommandHandler
118
+ });
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL29wZW4tZmVhdHVyZS1yZXF1ZXN0LWNvbW1hbmQtaGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlXG4gKlxuICogSGFuZGxlcyB0aGUgXCJSZXF1ZXN0IGEgZmVhdHVyZVwiIGNvbW1hbmQuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBHZXRGZWF0dXJlUmVxdWVzdElzc3VlRm9ybVVybFBhcmFtcyB9IGZyb20gJy4uL2ZlYXR1cmUtcmVxdWVzdC50cyc7XG5cbmltcG9ydCB7IGdldEZlYXR1cmVSZXF1ZXN0SXNzdWVGb3JtVXJsIH0gZnJvbSAnLi4vZmVhdHVyZS1yZXF1ZXN0LnRzJztcbmltcG9ydCB7IE9wZW5HaXRIdWJDb21tYW5kSGFuZGxlciB9IGZyb20gJy4vb3Blbi1naXQtaHViLWNvbW1hbmQtaGFuZGxlci50cyc7XG5cbi8qKlxuICogQ29uc3RydWN0b3IgcGFyYW1ldGVycyBmb3Ige0BsaW5rIE9wZW5GZWF0dXJlUmVxdWVzdENvbW1hbmRIYW5kbGVyfS5cbiAqL1xuZXhwb3J0IHR5cGUgT3BlbkZlYXR1cmVSZXF1ZXN0Q29tbWFuZEhhbmRsZXJDb25zdHJ1Y3RvclBhcmFtcyA9IEdldEZlYXR1cmVSZXF1ZXN0SXNzdWVGb3JtVXJsUGFyYW1zO1xuXG4vKipcbiAqIE9wZW5zIHRoZSBwbHVnaW4ncyBmZWF0dXJlLXJlcXVlc3QgZm9ybSwgcHJlZmlsbGluZyBvbmx5IHRoZSBwbHVnaW4gdmVyc2lvbi5cbiAqXG4gKiBTZWUgdGhlIFtjb21tdW5pdHkgY29tbWFuZHMgZ3VpZGVdKGh0dHBzOi8vbW5hb3Vtb3YuZGV2L29ic2lkaWFuLWxpYi9ndWlkZXMvY29tbXVuaXR5LWNvbW1hbmRzLylcbiAqIGFuZCBbYmVoYXZpb3JhbCB0ZXN0c10oaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWxpYi9ibG9iL21haW4vc3JjL2NvbW1hbmQtaGFuZGxlcnMvb3Blbi1mZWF0dXJlLXJlcXVlc3QtY29tbWFuZC1oYW5kbGVyLnRlc3QudHMpLlxuICovXG5leHBvcnQgY2xhc3MgT3BlbkZlYXR1cmVSZXF1ZXN0Q29tbWFuZEhhbmRsZXIgZXh0ZW5kcyBPcGVuR2l0SHViQ29tbWFuZEhhbmRsZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHBhcmFtczogT3BlbkZlYXR1cmVSZXF1ZXN0Q29tbWFuZEhhbmRsZXJDb25zdHJ1Y3RvclBhcmFtcztcblxuICAvKipcbiAgICogQ29uc3RydWN0cyBhIG5ldyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyAtIENvbnN0cnVjdG9yIHBhcmFtZXRlcnMuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGFyYW1zOiBPcGVuRmVhdHVyZVJlcXVlc3RDb21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zKSB7XG4gICAgc3VwZXIoeyBnaXRIdWJSZXBvOiBwYXJhbXMuZ2l0SHViUmVwbywgaWNvbjogJ2xpZ2h0YnVsYicsIGlkOiAncmVxdWVzdC1mZWF0dXJlJywgbmFtZTogJ1JlcXVlc3QgYSBmZWF0dXJlJyB9KTtcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIHByZWZpbGxlZCBmZWF0dXJlLXJlcXVlc3QgVVJMLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgbGluay5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBnZXRVcmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0RmVhdHVyZVJlcXVlc3RJc3N1ZUZvcm1VcmwodGhpcy5wYXJhbXMpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSw2QkFBOEM7QUFDOUMsMENBQXlDO0FBYWxDLE1BQU0seUNBQXlDLDZEQUF5QjtBQUFBLEVBQzVEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1YsWUFBWSxRQUEyRDtBQUM1RSxVQUFNLEVBQUUsWUFBWSxPQUFPLFlBQVksTUFBTSxhQUFhLElBQUksbUJBQW1CLE1BQU0sb0JBQW9CLENBQUM7QUFDNUcsU0FBSyxTQUFTO0FBQUEsRUFDaEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbUIsU0FBaUI7QUFDbEMsZUFBTyxzREFBOEIsS0FBSyxNQUFNO0FBQUEsRUFDbEQ7QUFDRjsiLCJuYW1lcyI6W119
@@ -0,0 +1,33 @@
1
+ /// <reference path="../library-references.d.cts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Handles the "Request a feature" command.
6
+ */
7
+ import type { GetFeatureRequestIssueFormUrlParams } from '../feature-request.cjs';
8
+ import { OpenGitHubCommandHandler } from './open-git-hub-command-handler.cjs';
9
+ /**
10
+ * Constructor parameters for {@link OpenFeatureRequestCommandHandler}.
11
+ */
12
+ export type OpenFeatureRequestCommandHandlerConstructorParams = GetFeatureRequestIssueFormUrlParams;
13
+ /**
14
+ * Opens the plugin's feature-request form, prefilling only the plugin version.
15
+ *
16
+ * See the [community commands guide](https://mnaoumov.dev/obsidian-lib/guides/community-commands/)
17
+ * and [behavioral tests](https://github.com/mnaoumov/obsidian-lib/blob/main/src/command-handlers/open-feature-request-command-handler.test.ts).
18
+ */
19
+ export declare class OpenFeatureRequestCommandHandler extends OpenGitHubCommandHandler {
20
+ private readonly params;
21
+ /**
22
+ * Constructs a new instance.
23
+ *
24
+ * @param params - Constructor parameters.
25
+ */
26
+ constructor(params: OpenFeatureRequestCommandHandlerConstructorParams);
27
+ /**
28
+ * Builds the prefilled feature-request URL.
29
+ *
30
+ * @returns The link.
31
+ */
32
+ protected getUrl(): string;
33
+ }
@@ -0,0 +1,121 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+ (function patchObsidianRequire() {
6
+ const originalRequire = require;
7
+ if (!originalRequire || originalRequire.__isPatched) {
8
+ return;
9
+ }
10
+ require = Object.assign(
11
+ (id) => requirePatched(id),
12
+ originalRequire,
13
+ {
14
+ __isPatched: true
15
+ }
16
+ );
17
+ function extractDefault($module) {
18
+ return $module && $module.__esModule && "default" in $module ? $module.default : $module;
19
+ }
20
+ const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
21
+ "@codemirror/autocomplete",
22
+ "@codemirror/collab",
23
+ "@codemirror/commands",
24
+ "@codemirror/language",
25
+ "@codemirror/lint",
26
+ "@codemirror/search",
27
+ "@codemirror/state",
28
+ "@codemirror/text",
29
+ "@codemirror/view",
30
+ "@lezer/common",
31
+ "@lezer/highlight",
32
+ "@lezer/lr",
33
+ "obsidian"
34
+ ]);
35
+ const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
36
+ "@codemirror/closebrackets",
37
+ "@codemirror/comment",
38
+ "@codemirror/fold",
39
+ "@codemirror/gutter",
40
+ "@codemirror/highlight",
41
+ "@codemirror/history",
42
+ "@codemirror/matchbrackets",
43
+ "@codemirror/panel",
44
+ "@codemirror/rangeset",
45
+ "@codemirror/rectangular-selection",
46
+ "@codemirror/stream-parser",
47
+ "@codemirror/tooltip"
48
+ ]);
49
+ function requirePatched(id) {
50
+ if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
51
+ return originalRequire?.(id);
52
+ }
53
+ const app = globalThis.app;
54
+ if (app?.isMobile) {
55
+ if (id === "process" || id === "node:process") {
56
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
57
+ return process;
58
+ }
59
+ } else {
60
+ const $module = originalRequire?.(id);
61
+ if ($module) {
62
+ return extractDefault($module);
63
+ }
64
+ }
65
+ console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
66
+ return {};
67
+ }
68
+ })();
69
+
70
+ "use strict";
71
+ var __defProp = Object.defineProperty;
72
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
73
+ var __getOwnPropNames = Object.getOwnPropertyNames;
74
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
75
+ var __export = (target, all) => {
76
+ for (var name in all)
77
+ __defProp(target, name, { get: all[name], enumerable: true });
78
+ };
79
+ var __copyProps = (to, from, except, desc) => {
80
+ if (from && typeof from === "object" || typeof from === "function") {
81
+ for (let key of __getOwnPropNames(from))
82
+ if (!__hasOwnProp.call(to, key) && key !== except)
83
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
84
+ }
85
+ return to;
86
+ };
87
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
88
+ var open_git_hub_command_handler_exports = {};
89
+ __export(open_git_hub_command_handler_exports, {
90
+ OpenGitHubCommandHandler: () => OpenGitHubCommandHandler
91
+ });
92
+ module.exports = __toCommonJS(open_git_hub_command_handler_exports);
93
+ var import_global_command_handler = require('./global-command-handler.cjs');
94
+ class OpenGitHubCommandHandler extends import_global_command_handler.GlobalCommandHandler {
95
+ /**
96
+ * The plugin's repository, as `owner/name`.
97
+ */
98
+ gitHubRepo;
99
+ /**
100
+ * Constructs a new instance.
101
+ *
102
+ * @param params - Constructor parameters.
103
+ */
104
+ constructor(params) {
105
+ super(params);
106
+ this.gitHubRepo = params.gitHubRepo;
107
+ }
108
+ /**
109
+ * Opens the page in the browser when the command is available.
110
+ */
111
+ async execute() {
112
+ if (this.canExecute()) {
113
+ window.open(await this.getUrl(), "_blank");
114
+ }
115
+ }
116
+ }
117
+ // Annotate the CommonJS export names for ESM import in node:
118
+ 0 && (module.exports = {
119
+ OpenGitHubCommandHandler
120
+ });
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL29wZW4tZ2l0LWh1Yi1jb21tYW5kLWhhbmRsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFNoYXJlZCBicm93c2VyLW9wZW5pbmcgYmVoYXZpb3IgZm9yIEdpdEh1YiBjb21tYW5kcy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFByb21pc2FibGUgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQgdHlwZSB7IENvbW1hbmRIYW5kbGVyQ29uc3RydWN0b3JQYXJhbXMgfSBmcm9tICcuL2NvbW1hbmQtaGFuZGxlci50cyc7XG5cbmltcG9ydCB7IEdsb2JhbENvbW1hbmRIYW5kbGVyIH0gZnJvbSAnLi9nbG9iYWwtY29tbWFuZC1oYW5kbGVyLnRzJztcblxuLyoqXG4gKiBDb25zdHJ1Y3RvciBwYXJhbWV0ZXJzIGZvciB7QGxpbmsgT3BlbkdpdEh1YkNvbW1hbmRIYW5kbGVyfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcGVuR2l0SHViQ29tbWFuZEhhbmRsZXJDb25zdHJ1Y3RvclBhcmFtcyBleHRlbmRzIENvbW1hbmRIYW5kbGVyQ29uc3RydWN0b3JQYXJhbXMge1xuICAvKipcbiAgICogVGhlIHBsdWdpbidzIHJlcG9zaXRvcnksIGFzIGBvd25lci9uYW1lYC5cbiAgICovXG4gIHJlYWRvbmx5IGdpdEh1YlJlcG86IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBjb21tYW5kcyB0aGF0IG9wZW4gYSBwYWdlIGluIHRoZSBwbHVnaW4ncyBHaXRIdWIgcmVwb3NpdG9yeS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE9wZW5HaXRIdWJDb21tYW5kSGFuZGxlciBleHRlbmRzIEdsb2JhbENvbW1hbmRIYW5kbGVyIHtcbiAgLyoqXG4gICAqIFRoZSBwbHVnaW4ncyByZXBvc2l0b3J5LCBhcyBgb3duZXIvbmFtZWAuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZ2l0SHViUmVwbzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gQ29uc3RydWN0b3IgcGFyYW1ldGVycy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IE9wZW5HaXRIdWJDb21tYW5kSGFuZGxlckNvbnN0cnVjdG9yUGFyYW1zKSB7XG4gICAgc3VwZXIocGFyYW1zKTtcbiAgICB0aGlzLmdpdEh1YlJlcG8gPSBwYXJhbXMuZ2l0SHViUmVwbztcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgcGFnZSBpbiB0aGUgYnJvd3NlciB3aGVuIHRoZSBjb21tYW5kIGlzIGF2YWlsYWJsZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmNhbkV4ZWN1dGUoKSkge1xuICAgICAgd2luZG93Lm9wZW4oYXdhaXQgdGhpcy5nZXRVcmwoKSwgJ19ibGFuaycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIGRlc3RpbmF0aW9uIFVSTC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGxpbmsuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0VXJsKCk6IFByb21pc2FibGU8c3RyaW5nPjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVBLG9DQUFxQztBQWU5QixNQUFlLGlDQUFpQyxtREFBcUI7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUl2RDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9aLFlBQVksUUFBbUQ7QUFDcEUsVUFBTSxNQUFNO0FBQ1osU0FBSyxhQUFhLE9BQU87QUFBQSxFQUMzQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsTUFBc0IsVUFBeUI7QUFDN0MsUUFBSSxLQUFLLFdBQVcsR0FBRztBQUNyQixhQUFPLEtBQUssTUFBTSxLQUFLLE9BQU8sR0FBRyxRQUFRO0FBQUEsSUFDM0M7QUFBQSxFQUNGO0FBUUY7IiwibmFtZXMiOltdfQ==
@@ -0,0 +1,43 @@
1
+ /// <reference path="../library-references.d.cts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * Shared browser-opening behavior for GitHub commands.
6
+ */
7
+ import type { Promisable } from 'type-fest' with { 'resolution-mode': 'import' };
8
+ import type { CommandHandlerConstructorParams } from './command-handler.cjs';
9
+ import { GlobalCommandHandler } from './global-command-handler.cjs';
10
+ /**
11
+ * Constructor parameters for {@link OpenGitHubCommandHandler}.
12
+ */
13
+ export interface OpenGitHubCommandHandlerConstructorParams extends CommandHandlerConstructorParams {
14
+ /**
15
+ * The plugin's repository, as `owner/name`.
16
+ */
17
+ readonly gitHubRepo: string;
18
+ }
19
+ /**
20
+ * Base class for commands that open a page in the plugin's GitHub repository.
21
+ */
22
+ export declare abstract class OpenGitHubCommandHandler extends GlobalCommandHandler {
23
+ /**
24
+ * The plugin's repository, as `owner/name`.
25
+ */
26
+ protected readonly gitHubRepo: string;
27
+ /**
28
+ * Constructs a new instance.
29
+ *
30
+ * @param params - Constructor parameters.
31
+ */
32
+ constructor(params: OpenGitHubCommandHandlerConstructorParams);
33
+ /**
34
+ * Opens the page in the browser when the command is available.
35
+ */
36
+ execute(): Promise<void>;
37
+ /**
38
+ * Builds the destination URL.
39
+ *
40
+ * @returns The link.
41
+ */
42
+ protected abstract getUrl(): Promisable<string>;
43
+ }