@mnaoumov/obsidian-dev-toolkit 1.0.0 → 1.1.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 (140) hide show
  1. package/README.md +9 -1
  2. package/dist/demo-vault-helper/main.js +499 -17
  3. package/dist/integration-test-plugin/main.js +11251 -2472
  4. package/dist/lib/cjs/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.cjs +9 -22
  5. package/dist/lib/cjs/bundlers/esbuild-impl/dependency.cjs +9 -22
  6. package/dist/lib/cjs/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +9 -22
  7. package/dist/lib/cjs/bundlers/esbuild-impl/index.cjs +9 -22
  8. package/dist/lib/cjs/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +9 -22
  9. package/dist/lib/cjs/bundlers/esbuild-impl/preprocess-plugin.cjs +9 -22
  10. package/dist/lib/cjs/bundlers/esbuild-impl/rename-css-plugin.cjs +9 -22
  11. package/dist/lib/cjs/bundlers/esbuild.cjs +9 -22
  12. package/dist/lib/cjs/bundlers/index.cjs +9 -22
  13. package/dist/lib/cjs/demo-vault-app-json.cjs +9 -22
  14. package/dist/lib/cjs/demo-vault-buttons.cjs +9 -22
  15. package/dist/lib/cjs/demo-vault-buttons.d.cts +7 -7
  16. package/dist/lib/cjs/demo-vault-coverage.cjs +11 -23
  17. package/dist/lib/cjs/demo-vault.cjs +9 -22
  18. package/dist/lib/cjs/formatters/dprint.cjs +9 -22
  19. package/dist/lib/cjs/formatters/index.cjs +9 -22
  20. package/dist/lib/cjs/index.cjs +9 -22
  21. package/dist/lib/cjs/integration-test-setup.cjs +9 -22
  22. package/dist/lib/cjs/integration-test-vitest-global-setup.cjs +9 -22
  23. package/dist/lib/cjs/jest-setup.cjs +9 -22
  24. package/dist/lib/cjs/linters/eslint-config.cjs +60 -22
  25. package/dist/lib/cjs/linters/eslint-rules/index.cjs +23 -24
  26. package/dist/lib/cjs/linters/eslint-rules/index.d.cts +4 -0
  27. package/dist/lib/cjs/linters/eslint-rules/manifest-description.cjs +9 -22
  28. package/dist/lib/cjs/linters/eslint-rules/manifest-helpers.cjs +9 -22
  29. package/dist/lib/cjs/linters/eslint-rules/manifest-id.cjs +9 -22
  30. package/dist/lib/cjs/linters/eslint-rules/manifest-name.cjs +9 -22
  31. package/dist/lib/cjs/linters/eslint-rules/manifest-schema.cjs +9 -22
  32. package/dist/lib/cjs/linters/eslint-rules/no-local-obsidian-internals.cjs +259 -0
  33. package/dist/lib/cjs/linters/eslint-rules/no-local-obsidian-internals.d.cts +10 -0
  34. package/dist/lib/cjs/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.cjs +9 -22
  35. package/dist/lib/cjs/linters/eslint-rules/no-untrusted-input-events.cjs +9 -22
  36. package/dist/lib/cjs/linters/eslint-rules/obsidian-dev-utils-plugin.cjs +18 -23
  37. package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code-in-ui.cjs +263 -0
  38. package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code-in-ui.d.cts +30 -0
  39. package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code.cjs +215 -0
  40. package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code.d.cts +29 -0
  41. package/dist/lib/cjs/linters/eslint-rules/require-component-suffix.cjs +9 -22
  42. package/dist/lib/cjs/linters/eslint-rules/require-plugin-api-contract-schemas.cjs +306 -0
  43. package/dist/lib/cjs/linters/eslint-rules/require-plugin-api-contract-schemas.d.cts +10 -0
  44. package/dist/lib/cjs/linters/eslint.cjs +9 -22
  45. package/dist/lib/cjs/linters/index.cjs +20 -24
  46. package/dist/lib/cjs/linters/index.d.cts +3 -0
  47. package/dist/lib/cjs/linters/markdownlint-cli2-config.cjs +171 -0
  48. package/dist/lib/cjs/linters/markdownlint-cli2-config.d.cts +12 -0
  49. package/dist/lib/cjs/linters/markdownlint-rules/index.cjs +164 -0
  50. package/dist/lib/cjs/linters/markdownlint-rules/index.d.cts +2 -0
  51. package/dist/lib/cjs/linters/markdownlint-rules/plugin-name-as-code.cjs +246 -0
  52. package/dist/lib/cjs/linters/markdownlint-rules/plugin-name-as-code.d.cts +32 -0
  53. package/dist/lib/cjs/linters/markdownlint.cjs +9 -22
  54. package/dist/lib/cjs/linters/obsidianmd-rule-custom-message.cjs +9 -22
  55. package/dist/lib/cjs/linters/plugin-names.cjs +249 -0
  56. package/dist/lib/cjs/linters/plugin-names.d.cts +81 -0
  57. package/dist/lib/cjs/obsidian-plugin-repo-paths.cjs +9 -22
  58. package/dist/lib/cjs/setup.cjs +9 -22
  59. package/dist/lib/cjs/templates.cjs +9 -22
  60. package/dist/lib/cjs/test-runners/index.cjs +9 -22
  61. package/dist/lib/cjs/test-runners/integration-test-plugin.cjs +9 -22
  62. package/dist/lib/cjs/test-runners/performance-eval-cap.cjs +9 -22
  63. package/dist/lib/cjs/test-runners/stale-build-global-setup.cjs +9 -22
  64. package/dist/lib/cjs/test-runners/vitest-config.cjs +9 -22
  65. package/dist/lib/cjs/version.cjs +9 -22
  66. package/dist/lib/cjs/vitest-setup.cjs +9 -22
  67. package/dist/lib/esm/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.mjs +6 -14
  68. package/dist/lib/esm/bundlers/esbuild-impl/dependency.mjs +6 -14
  69. package/dist/lib/esm/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +6 -14
  70. package/dist/lib/esm/bundlers/esbuild-impl/index.mjs +6 -14
  71. package/dist/lib/esm/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +6 -14
  72. package/dist/lib/esm/bundlers/esbuild-impl/preprocess-plugin.mjs +6 -14
  73. package/dist/lib/esm/bundlers/esbuild-impl/rename-css-plugin.mjs +6 -14
  74. package/dist/lib/esm/bundlers/esbuild.mjs +6 -14
  75. package/dist/lib/esm/bundlers/index.mjs +6 -14
  76. package/dist/lib/esm/demo-vault-app-json.mjs +6 -14
  77. package/dist/lib/esm/demo-vault-buttons.d.mts +7 -7
  78. package/dist/lib/esm/demo-vault-buttons.mjs +6 -14
  79. package/dist/lib/esm/demo-vault-coverage.mjs +8 -15
  80. package/dist/lib/esm/demo-vault.mjs +6 -14
  81. package/dist/lib/esm/formatters/dprint.mjs +6 -14
  82. package/dist/lib/esm/formatters/index.mjs +6 -14
  83. package/dist/lib/esm/index.mjs +6 -14
  84. package/dist/lib/esm/integration-test-setup.mjs +6 -14
  85. package/dist/lib/esm/integration-test-vitest-global-setup.mjs +6 -14
  86. package/dist/lib/esm/jest-setup.mjs +6 -14
  87. package/dist/lib/esm/linters/eslint-config.mjs +57 -14
  88. package/dist/lib/esm/linters/eslint-rules/index.d.mts +4 -0
  89. package/dist/lib/esm/linters/eslint-rules/index.mjs +15 -15
  90. package/dist/lib/esm/linters/eslint-rules/manifest-description.mjs +6 -14
  91. package/dist/lib/esm/linters/eslint-rules/manifest-helpers.mjs +6 -14
  92. package/dist/lib/esm/linters/eslint-rules/manifest-id.mjs +6 -14
  93. package/dist/lib/esm/linters/eslint-rules/manifest-name.mjs +6 -14
  94. package/dist/lib/esm/linters/eslint-rules/manifest-schema.mjs +6 -14
  95. package/dist/lib/esm/linters/eslint-rules/no-local-obsidian-internals.d.mts +10 -0
  96. package/dist/lib/esm/linters/eslint-rules/no-local-obsidian-internals.mjs +150 -0
  97. package/dist/lib/esm/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.mjs +6 -14
  98. package/dist/lib/esm/linters/eslint-rules/no-untrusted-input-events.mjs +6 -14
  99. package/dist/lib/esm/linters/eslint-rules/obsidian-dev-utils-plugin.mjs +15 -15
  100. package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code-in-ui.d.mts +30 -0
  101. package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code-in-ui.mjs +157 -0
  102. package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code.d.mts +29 -0
  103. package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code.mjs +108 -0
  104. package/dist/lib/esm/linters/eslint-rules/require-component-suffix.mjs +6 -14
  105. package/dist/lib/esm/linters/eslint-rules/require-plugin-api-contract-schemas.d.mts +10 -0
  106. package/dist/lib/esm/linters/eslint-rules/require-plugin-api-contract-schemas.mjs +197 -0
  107. package/dist/lib/esm/linters/eslint.mjs +6 -14
  108. package/dist/lib/esm/linters/index.d.mts +3 -0
  109. package/dist/lib/esm/linters/index.mjs +13 -15
  110. package/dist/lib/esm/linters/markdownlint-cli2-config.d.mts +12 -0
  111. package/dist/lib/esm/linters/markdownlint-cli2-config.mjs +66 -0
  112. package/dist/lib/esm/linters/markdownlint-rules/index.d.mts +2 -0
  113. package/dist/lib/esm/linters/markdownlint-rules/index.mjs +46 -0
  114. package/dist/lib/esm/linters/markdownlint-rules/plugin-name-as-code.d.mts +32 -0
  115. package/dist/lib/esm/linters/markdownlint-rules/plugin-name-as-code.mjs +130 -0
  116. package/dist/lib/esm/linters/markdownlint.mjs +6 -14
  117. package/dist/lib/esm/linters/obsidianmd-rule-custom-message.mjs +6 -14
  118. package/dist/lib/esm/linters/plugin-names.d.mts +81 -0
  119. package/dist/lib/esm/linters/plugin-names.mjs +141 -0
  120. package/dist/lib/esm/obsidian-plugin-repo-paths.mjs +6 -14
  121. package/dist/lib/esm/setup.mjs +6 -14
  122. package/dist/lib/esm/templates.mjs +6 -14
  123. package/dist/lib/esm/test-runners/index.mjs +6 -14
  124. package/dist/lib/esm/test-runners/integration-test-plugin.mjs +6 -14
  125. package/dist/lib/esm/test-runners/performance-eval-cap.mjs +6 -14
  126. package/dist/lib/esm/test-runners/stale-build-global-setup.mjs +6 -14
  127. package/dist/lib/esm/test-runners/vitest-config.mjs +6 -14
  128. package/dist/lib/esm/version.mjs +6 -14
  129. package/dist/lib/esm/vitest-setup.mjs +6 -14
  130. package/dist/templates/scripts/markdownlint-cli2-config.ts +2 -2
  131. package/linters/eslint-rules/no-local-obsidian-internals/package.json +6 -0
  132. package/linters/eslint-rules/plugin-name-as-code/package.json +6 -0
  133. package/linters/eslint-rules/plugin-name-as-code-in-ui/package.json +6 -0
  134. package/linters/eslint-rules/require-plugin-api-contract-schemas/package.json +6 -0
  135. package/linters/markdownlint-cli2-config/package.json +6 -0
  136. package/linters/markdownlint-rules/index/package.json +6 -0
  137. package/linters/markdownlint-rules/package.json +6 -0
  138. package/linters/markdownlint-rules/plugin-name-as-code/package.json +6 -0
  139. package/linters/plugin-names/package.json +6 -0
  140. package/package.json +84 -23
@@ -0,0 +1,130 @@
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
+
6
+ (function () {
7
+ function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
+ symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
9
+ symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
10
+ }
11
+
12
+ function ensureBrowserProcess() {
13
+ const browserProcess = {
14
+ browser: true,
15
+ cwd() {
16
+ return "/";
17
+ },
18
+ env: {},
19
+ platform: "android"
20
+ };
21
+ const existingProcess = globalThis.process;
22
+ if (!existingProcess) {
23
+ globalThis.process = browserProcess;
24
+ return;
25
+ }
26
+ if (existingProcess.versions?.node) {
27
+ return;
28
+ }
29
+ const existingProcessRecord = existingProcess;
30
+ for (const [key, value] of Object.entries(browserProcess)) {
31
+ existingProcessRecord[key] ??= value;
32
+ }
33
+ existingProcessRecord["browser"] = true;
34
+ }
35
+
36
+ (function initEsm() {
37
+ ensureDisposeSymbols();
38
+ ensureBrowserProcess();
39
+ })();
40
+ })();
41
+
42
+ import process from "node:process";
43
+ import {
44
+ findPluginNameMatches,
45
+ getPluginNames
46
+ } from "../plugin-names.mjs";
47
+ const PLUGIN_NAME_AS_CODE_RULE_NAME = "plugin-name-as-code";
48
+ const EXCLUDED_TOKEN_TYPES = /* @__PURE__ */ new Set([
49
+ "atxHeading",
50
+ "blockQuote",
51
+ "definition",
52
+ "htmlFlow",
53
+ "image",
54
+ "link",
55
+ "setextHeading"
56
+ ]);
57
+ const UNDEFINED_REFERENCE_TOKEN_TYPE_PREFIX = "undefinedReference";
58
+ const EXCLUDED_LINE_PATTERNS = [
59
+ /\[\[[^\]]*\]\]/g,
60
+ /<code\b[^>]*>[\s\S]*?<\/code>/gi,
61
+ /\b[a-z][\w+.-]*:\/\/\S+/gi
62
+ ];
63
+ const pluginNameAsCodeRule = {
64
+ description: "Plugin name is not marked as code (wrap it in backticks)",
65
+ function: (params, onError) => {
66
+ const options = params.config;
67
+ const pluginNames = getPluginNames({ additionalPluginNames: options.additionalPluginNames, cwd: process.cwd() });
68
+ const proseRangesByLine = /* @__PURE__ */ new Map();
69
+ collectProseRanges(params.parsers.micromark.tokens, proseRangesByLine);
70
+ for (const [index, line] of params.lines.entries()) {
71
+ const lineNumber = index + 1;
72
+ const ranges = proseRangesByLine.get(lineNumber);
73
+ if (!ranges) {
74
+ continue;
75
+ }
76
+ const mergedRanges = mergeRanges(ranges);
77
+ for (const match of findPluginNameMatches(line, pluginNames, EXCLUDED_LINE_PATTERNS)) {
78
+ const column = match.index + 1;
79
+ const isInProse = mergedRanges.some((range) => range.start <= column && column + match.name.length <= range.end);
80
+ if (!isInProse) {
81
+ continue;
82
+ }
83
+ onError({
84
+ detail: `Wrap \`${match.name}\` in backticks`,
85
+ fixInfo: {
86
+ deleteCount: match.name.length,
87
+ editColumn: column,
88
+ insertText: `\`${match.name}\``
89
+ },
90
+ lineNumber,
91
+ range: [column, match.name.length]
92
+ });
93
+ }
94
+ }
95
+ },
96
+ names: [PLUGIN_NAME_AS_CODE_RULE_NAME],
97
+ parser: "micromark",
98
+ tags: ["code"]
99
+ };
100
+ function collectProseRanges(tokens, proseRangesByLine) {
101
+ for (const token of tokens) {
102
+ if (EXCLUDED_TOKEN_TYPES.has(token.type) || token.type.startsWith(UNDEFINED_REFERENCE_TOKEN_TYPE_PREFIX)) {
103
+ continue;
104
+ }
105
+ if (token.type === "data") {
106
+ const ranges = proseRangesByLine.get(token.startLine) ?? [];
107
+ ranges.push({ end: token.endColumn, start: token.startColumn });
108
+ proseRangesByLine.set(token.startLine, ranges);
109
+ continue;
110
+ }
111
+ collectProseRanges(token.children, proseRangesByLine);
112
+ }
113
+ }
114
+ function mergeRanges(ranges) {
115
+ const merged = [];
116
+ for (const range of [...ranges].sort((a, b) => a.start - b.start)) {
117
+ const last = merged.at(-1);
118
+ if (last && range.start <= last.end) {
119
+ merged[merged.length - 1] = { end: Math.max(last.end, range.end), start: last.start };
120
+ } else {
121
+ merged.push(range);
122
+ }
123
+ }
124
+ return merged;
125
+ }
126
+ export {
127
+ PLUGIN_NAME_AS_CODE_RULE_NAME,
128
+ pluginNameAsCodeRule
129
+ };
130
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvbWFya2Rvd25saW50LXJ1bGVzL3BsdWdpbi1uYW1lLWFzLWNvZGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBtYXJrZG93bmxpbnQgcnVsZTogYHBsdWdpbi1uYW1lLWFzLWNvZGVgLlxuICpcbiAqIFJlcG9ydHMgYW4gT2JzaWRpYW4gcGx1Z2luJ3MgZGlzcGxheSBuYW1lIHdyaXR0ZW4gYXMgcGxhaW4gdGV4dCBpbiBtYXJrZG93biwgYW5kIGZpeGVzIGl0IGJ5IHdyYXBwaW5nIHRoZSBuYW1lIGluXG4gKiBiYWNrdGlja3MuIFRoZSBuYW1lcyBjb21lIGZyb20gYHBsdWdpbi1uYW1lcy50c2A6IHRoZSBzaGFyZWQgbGlzdCwgdGhlIHByb2plY3QncyBvd24gYG1hbmlmZXN0Lmpzb25gIGBuYW1lYCwgYW5kXG4gKiB0aGUgcnVsZSdzIGBhZGRpdGlvbmFsUGx1Z2luTmFtZXNgIG9wdGlvbi5cbiAqXG4gKiBPbmx5IHByb3NlIGlzIHJlYWQ6IHRoZSBgZGF0YWAgdG9rZW5zIG1pY3JvbWFyayBsZWF2ZXMgaW4gcGFyYWdyYXBocywgbGlzdHMsIHRhYmxlcyBhbmQgZW1waGFzaXMuIEV2ZXJ5dGhpbmcgZWxzZSBpc1xuICogbGVmdCBhbG9uZSBiZWNhdXNlIGEgY29kZSBzcGFuIHRoZXJlIHdvdWxkIGJlIHdyb25nIG9yIHdvdWxkIGNoYW5nZSBzb21ldGhpbmc6XG4gKlxuICogLSBjb2RlIHNwYW5zLCBmZW5jZWQgYW5kIGluZGVudGVkIGNvZGUgYW5kIG1hdGggYXJlIG5vdCBgZGF0YWAgdG9rZW5zLCBzbyB0aGV5IGFyZSBuZXZlciByZWFjaGVkO1xuICogLSBhbiBIVE1MIGJsb2NrLCB3aG9zZSBjb250ZW50IG1hcmtkb3dubGludCBwYXJzZXMgYWdhaW4gYXMgbWFya2Rvd247XG4gKiAtIGEgbGluayBvciBpbWFnZSBsYWJlbCBhbmQgdGFyZ2V0LCBhIHJlZmVyZW5jZSBkZWZpbml0aW9uIGFuZCBhbiBhdXRvbGluazogYSBjb2RlIHNwYW4gaW5zaWRlIGEgbGluayBsYWJlbFxuICogICByZW5kZXJzIGluY29uc2lzdGVudGx5IGFjcm9zcyBHaXRIdWIsIE9ic2lkaWFuIGFuZCB0ZXJtaW5hbHM7XG4gKiAtIGEgaGVhZGluZywgd2hvc2UgYW5jaG9yIHdvdWxkIGNoYW5nZTtcbiAqIC0gYSBibG9jayBxdW90ZSwgd2hpY2ggcXVvdGVzIHNvbWVib2R5IGVsc2UncyB3b3JkcztcbiAqIC0gYW4gT2JzaWRpYW4gYFtbd2lraWxpbmtdXWAgYW5kIGFuIGlubGluZSBgPGNvZGU+YCBlbGVtZW50LCB3aGljaCBtaWNyb21hcmsgcmVhZHMgYXMgcGxhaW4gdGV4dCwgYW5kIGEgYmFyZSBVUkwuXG4gKlxuICogTm90IGF0dGVtcHRlZDogYSBtdWx0aS13b3JkIG5hbWUgYnJva2VuIGFjcm9zcyB0d28gbGluZXMgb2Ygb25lIHBhcmFncmFwaC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIE1pY3JvbWFya1Rva2VuLFxuICBSdWxlXG59IGZyb20gJ21hcmtkb3dubGludCc7XG5cbmltcG9ydCBwcm9jZXNzIGZyb20gJ25vZGU6cHJvY2Vzcyc7XG5cbmltcG9ydCB0eXBlIHsgUGx1Z2luTmFtZVJ1bGVPcHRpb25zIH0gZnJvbSAnLi4vcGx1Z2luLW5hbWVzLnRzJztcblxuaW1wb3J0IHtcbiAgZmluZFBsdWdpbk5hbWVNYXRjaGVzLFxuICBnZXRQbHVnaW5OYW1lc1xufSBmcm9tICcuLi9wbHVnaW4tbmFtZXMudHMnO1xuXG4vKipcbiAqIFRoZSBydWxlJ3MgbmFtZSwgYXMgaXQgaXMgc3BlbGxlZCBpbiBhIGBtYXJrZG93bmxpbnQtY2xpMmAgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGNvbnN0IFBMVUdJTl9OQU1FX0FTX0NPREVfUlVMRV9OQU1FID0gJ3BsdWdpbi1uYW1lLWFzLWNvZGUnO1xuXG4vKipcbiAqIFRoZSB0b2tlbiB0eXBlcyB3aG9zZSB3aG9sZSBzdWJ0cmVlIGlzIHNraXBwZWQuXG4gKi9cbmNvbnN0IEVYQ0xVREVEX1RPS0VOX1RZUEVTID0gbmV3IFNldChbXG4gICdhdHhIZWFkaW5nJyxcbiAgJ2Jsb2NrUXVvdGUnLFxuICAnZGVmaW5pdGlvbicsXG4gICdodG1sRmxvdycsXG4gICdpbWFnZScsXG4gICdsaW5rJyxcbiAgJ3NldGV4dEhlYWRpbmcnXG5dKTtcblxuLyoqXG4gKiBUaGUgcHJlZml4IG9mIHRoZSB0b2tlbiB0eXBlcyBtYXJrZG93bmxpbnQgYXBwZW5kcyBmb3IgYSBzaG9ydGN1dCwgY29sbGFwc2VkIG9yIGZ1bGwgcmVmZXJlbmNlIHdpdGggbm8gZGVmaW5pdGlvbi5cbiAqIFRoZXkgcmVwZWF0IHRleHQgdGhlIHRyZWUgYWxyZWFkeSBob2xkcywgc28gcmVhZGluZyB0aGVtIHdvdWxkIHJlcG9ydCBhIG5hbWUgdHdpY2UuXG4gKi9cbmNvbnN0IFVOREVGSU5FRF9SRUZFUkVOQ0VfVE9LRU5fVFlQRV9QUkVGSVggPSAndW5kZWZpbmVkUmVmZXJlbmNlJztcblxuLyoqXG4gKiBUaGUgbGluZSBzcGFucyBtaWNyb21hcmsgcmVhZHMgYXMgcGxhaW4gdGV4dCB3aG9zZSBwbHVnaW4gbmFtZXMgYXJlIG5vdCBwcm9zZTogYW4gT2JzaWRpYW4gd2lraWxpbmssIGFuIGlubGluZVxuICogYDxjb2RlPmAgZWxlbWVudCwgYSBVUkwuXG4gKi9cbmNvbnN0IEVYQ0xVREVEX0xJTkVfUEFUVEVSTlM6IHJlYWRvbmx5IFJlZ0V4cFtdID0gW1xuICAvXFxbXFxbW15cXF1dKlxcXVxcXS9nLFxuICAvPGNvZGVcXGJbXj5dKj5bXFxzXFxTXSo/PFxcL2NvZGU+L2dpLFxuICAvXFxiW2Etel1bXFx3Ky4tXSo6XFwvXFwvXFxTKy9naVxuXTtcblxuLyoqXG4gKiBBIGNvbHVtbiByYW5nZSBvZiBvbmUgbGluZSwgMS1iYXNlZCwgZW5kIGV4Y2x1c2l2ZS5cbiAqL1xuaW50ZXJmYWNlIENvbHVtblJhbmdlIHtcbiAgcmVhZG9ubHkgZW5kOiBudW1iZXI7XG4gIHJlYWRvbmx5IHN0YXJ0OiBudW1iZXI7XG59XG5cbi8qKlxuICogQSBtYXJrZG93bmxpbnQgcnVsZSByZXF1aXJpbmcgYSBwbHVnaW4gbmFtZSBpbiBtYXJrZG93biB0byBiZSBtYXJrZWQgYXMgY29kZS5cbiAqL1xuZXhwb3J0IGNvbnN0IHBsdWdpbk5hbWVBc0NvZGVSdWxlOiBSdWxlID0ge1xuICBkZXNjcmlwdGlvbjogJ1BsdWdpbiBuYW1lIGlzIG5vdCBtYXJrZWQgYXMgY29kZSAod3JhcCBpdCBpbiBiYWNrdGlja3MpJyxcbiAgZnVuY3Rpb246IChwYXJhbXMsIG9uRXJyb3IpID0+IHtcbiAgICAvLyBUaGUgbWFya2Rvd25saW50IGVuZ2luZSBoYW5kcyBhbiBlbmFibGVkIHJ1bGUgaXRzIGNvbmZpZ3VyYXRpb24gb2JqZWN0LCBvciBhbiBlbXB0eSBvbmUgd2hlbiB0aGUgcnVsZSBpcyBtZXJlbHkgYHRydWVgLlxuICAgIGNvbnN0IG9wdGlvbnMgPSBwYXJhbXMuY29uZmlnIGFzIFBsdWdpbk5hbWVSdWxlT3B0aW9ucztcbiAgICBjb25zdCBwbHVnaW5OYW1lcyA9IGdldFBsdWdpbk5hbWVzKHsgYWRkaXRpb25hbFBsdWdpbk5hbWVzOiBvcHRpb25zLmFkZGl0aW9uYWxQbHVnaW5OYW1lcywgY3dkOiBwcm9jZXNzLmN3ZCgpIH0pO1xuICAgIGNvbnN0IHByb3NlUmFuZ2VzQnlMaW5lID0gbmV3IE1hcDxudW1iZXIsIENvbHVtblJhbmdlW10+KCk7XG4gICAgY29sbGVjdFByb3NlUmFuZ2VzKHBhcmFtcy5wYXJzZXJzLm1pY3JvbWFyay50b2tlbnMsIHByb3NlUmFuZ2VzQnlMaW5lKTtcblxuICAgIGZvciAoY29uc3QgW2luZGV4LCBsaW5lXSBvZiBwYXJhbXMubGluZXMuZW50cmllcygpKSB7XG4gICAgICBjb25zdCBsaW5lTnVtYmVyID0gaW5kZXggKyAxO1xuICAgICAgY29uc3QgcmFuZ2VzID0gcHJvc2VSYW5nZXNCeUxpbmUuZ2V0KGxpbmVOdW1iZXIpO1xuICAgICAgaWYgKCFyYW5nZXMpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1lcmdlZFJhbmdlcyA9IG1lcmdlUmFuZ2VzKHJhbmdlcyk7XG4gICAgICBmb3IgKGNvbnN0IG1hdGNoIG9mIGZpbmRQbHVnaW5OYW1lTWF0Y2hlcyhsaW5lLCBwbHVnaW5OYW1lcywgRVhDTFVERURfTElORV9QQVRURVJOUykpIHtcbiAgICAgICAgY29uc3QgY29sdW1uID0gbWF0Y2guaW5kZXggKyAxO1xuICAgICAgICBjb25zdCBpc0luUHJvc2UgPSBtZXJnZWRSYW5nZXMuc29tZSgocmFuZ2UpID0+IHJhbmdlLnN0YXJ0IDw9IGNvbHVtbiAmJiBjb2x1bW4gKyBtYXRjaC5uYW1lLmxlbmd0aCA8PSByYW5nZS5lbmQpO1xuICAgICAgICBpZiAoIWlzSW5Qcm9zZSkge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgb25FcnJvcih7XG4gICAgICAgICAgZGV0YWlsOiBgV3JhcCBcXGAke21hdGNoLm5hbWV9XFxgIGluIGJhY2t0aWNrc2AsXG4gICAgICAgICAgZml4SW5mbzoge1xuICAgICAgICAgICAgZGVsZXRlQ291bnQ6IG1hdGNoLm5hbWUubGVuZ3RoLFxuICAgICAgICAgICAgZWRpdENvbHVtbjogY29sdW1uLFxuICAgICAgICAgICAgaW5zZXJ0VGV4dDogYFxcYCR7bWF0Y2gubmFtZX1cXGBgXG4gICAgICAgICAgfSxcbiAgICAgICAgICBsaW5lTnVtYmVyLFxuICAgICAgICAgIHJhbmdlOiBbY29sdW1uLCBtYXRjaC5uYW1lLmxlbmd0aF1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9LFxuICBuYW1lczogW1BMVUdJTl9OQU1FX0FTX0NPREVfUlVMRV9OQU1FXSxcbiAgcGFyc2VyOiAnbWljcm9tYXJrJyxcbiAgdGFnczogWydjb2RlJ11cbn07XG5cbi8qKlxuICogQ29sbGVjdHMgdGhlIGNvbHVtbiByYW5nZXMgb2YgdGhlIHByb3NlIGBkYXRhYCB0b2tlbnMsIGxpbmUgYnkgbGluZSwgc2tpcHBpbmcgdGhlIGV4Y2x1ZGVkIHN1YnRyZWVzLlxuICpcbiAqIEBwYXJhbSB0b2tlbnMgLSBUaGUgdG9rZW5zIHRvIHdhbGsuXG4gKiBAcGFyYW0gcHJvc2VSYW5nZXNCeUxpbmUgLSBUaGUgcmFuZ2VzIGNvbGxlY3RlZCBzbyBmYXIsIGtleWVkIGJ5IGxpbmUgbnVtYmVyLlxuICovXG5mdW5jdGlvbiBjb2xsZWN0UHJvc2VSYW5nZXModG9rZW5zOiByZWFkb25seSBNaWNyb21hcmtUb2tlbltdLCBwcm9zZVJhbmdlc0J5TGluZTogTWFwPG51bWJlciwgQ29sdW1uUmFuZ2VbXT4pOiB2b2lkIHtcbiAgZm9yIChjb25zdCB0b2tlbiBvZiB0b2tlbnMpIHtcbiAgICBpZiAoRVhDTFVERURfVE9LRU5fVFlQRVMuaGFzKHRva2VuLnR5cGUpIHx8IHRva2VuLnR5cGUuc3RhcnRzV2l0aChVTkRFRklORURfUkVGRVJFTkNFX1RPS0VOX1RZUEVfUFJFRklYKSkge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKHRva2VuLnR5cGUgPT09ICdkYXRhJykge1xuICAgICAgY29uc3QgcmFuZ2VzID0gcHJvc2VSYW5nZXNCeUxpbmUuZ2V0KHRva2VuLnN0YXJ0TGluZSkgPz8gW107XG4gICAgICByYW5nZXMucHVzaCh7IGVuZDogdG9rZW4uZW5kQ29sdW1uLCBzdGFydDogdG9rZW4uc3RhcnRDb2x1bW4gfSk7XG4gICAgICBwcm9zZVJhbmdlc0J5TGluZS5zZXQodG9rZW4uc3RhcnRMaW5lLCByYW5nZXMpO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29sbGVjdFByb3NlUmFuZ2VzKHRva2VuLmNoaWxkcmVuLCBwcm9zZVJhbmdlc0J5TGluZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBNZXJnZXMgcmFuZ2VzIHRoYXQgdG91Y2ggb3Igb3ZlcmxhcCwgc28gYSBuYW1lIG1pY3JvbWFyayBzcGxpdHMgYWNyb3NzIGFkamFjZW50IGBkYXRhYCB0b2tlbnMgaXMgc3RpbGwgaW5zaWRlIG9uZS5cbiAqXG4gKiBAcGFyYW0gcmFuZ2VzIC0gVGhlIHJhbmdlcyBvZiBvbmUgbGluZS5cbiAqIEByZXR1cm5zIFRoZSBtZXJnZWQgcmFuZ2VzLlxuICovXG5mdW5jdGlvbiBtZXJnZVJhbmdlcyhyYW5nZXM6IHJlYWRvbmx5IENvbHVtblJhbmdlW10pOiBDb2x1bW5SYW5nZVtdIHtcbiAgY29uc3QgbWVyZ2VkOiBDb2x1bW5SYW5nZVtdID0gW107XG4gIGZvciAoY29uc3QgcmFuZ2Ugb2YgWy4uLnJhbmdlc10uc29ydCgoYSwgYikgPT4gYS5zdGFydCAtIGIuc3RhcnQpKSB7XG4gICAgY29uc3QgbGFzdCA9IG1lcmdlZC5hdCgtMSk7XG4gICAgaWYgKGxhc3QgJiYgcmFuZ2Uuc3RhcnQgPD0gbGFzdC5lbmQpIHtcbiAgICAgIG1lcmdlZFttZXJnZWQubGVuZ3RoIC0gMV0gPSB7IGVuZDogTWF0aC5tYXgobGFzdC5lbmQsIHJhbmdlLmVuZCksIHN0YXJ0OiBsYXN0LnN0YXJ0IH07XG4gICAgfSBlbHNlIHtcbiAgICAgIG1lcmdlZC5wdXNoKHJhbmdlKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG1lcmdlZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNEJBLE9BQU8sYUFBYTtBQUlwQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUtBLE1BQU0sZ0NBQWdDO0FBSzdDLE1BQU0sdUJBQXVCLG9CQUFJLElBQUk7QUFBQSxFQUNuQztBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUNGLENBQUM7QUFNRCxNQUFNLHdDQUF3QztBQU05QyxNQUFNLHlCQUE0QztBQUFBLEVBQ2hEO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFDRjtBQWFPLE1BQU0sdUJBQTZCO0FBQUEsRUFDeEMsYUFBYTtBQUFBLEVBQ2Is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
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
5
5
 
6
6
  (function () {
7
7
  function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
8
+ symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
9
+ symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
10
10
  }
11
11
 
12
12
  function ensureBrowserProcess() {
13
13
  const browserProcess = {
14
14
  browser: true,
15
15
  cwd() {
16
- return '/';
16
+ return "/";
17
17
  },
18
18
  env: {},
19
- platform: 'android'
19
+ platform: "android"
20
20
  };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
21
  const existingProcess = globalThis.process;
24
-
25
22
  if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
23
  globalThis.process = browserProcess;
28
24
  return;
29
25
  }
30
-
31
26
  if (existingProcess.versions?.node) {
32
27
  return;
33
28
  }
34
-
35
29
  const existingProcessRecord = existingProcess;
36
-
37
30
  for (const [key, value] of Object.entries(browserProcess)) {
38
31
  existingProcessRecord[key] ??= value;
39
32
  }
40
-
41
- existingProcessRecord['browser'] = true;
33
+ existingProcessRecord["browser"] = true;
42
34
  }
43
35
 
44
36
  (function initEsm() {
@@ -57,4 +49,4 @@ async function lint(options) {
57
49
  export {
58
50
  lint
59
51
  };
60
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvbWFya2Rvd25saW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogTGludHMgYW4gT2JzaWRpYW4gcGx1Z2luJ3MgbWFya2Rvd246IHRoZSBnZW5lcmljIHJ1bm5lciBmcm9tIGBAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdGAsIHdoaWNoIGNvcGllc1xuICogdGhpcyBwYWNrYWdlJ3MgYC5tYXJrZG93bmxpbnQtY2xpMi5tanNgIHRlbXBsYXRlIGludG8gYSBwcm9qZWN0IHRoYXQgaGFzIG5vIGNvbmZpZ3VyYXRpb24geWV0LlxuICovXG5cbmltcG9ydCB0eXBlIHsgTGludE9wdGlvbnMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9saW50ZXJzL21hcmtkb3dubGludCc7XG5cbmltcG9ydCB7IGxpbnQgYXMgbGludEdlbmVyaWMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9saW50ZXJzL21hcmtkb3dubGludCc7XG5pbXBvcnQgeyBSZXBvUGF0aHMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9yZXBvLXBhdGhzJztcblxuaW1wb3J0IHsgZ2V0VGVtcGxhdGVGaWxlUGF0aCB9IGZyb20gJy4uL3RlbXBsYXRlcy50cyc7XG5cbi8qKlxuICogTGludHMgdGhlIHByb2plY3QncyBtYXJrZG93biB3aXRoIGBtYXJrZG93bmxpbnQtY2xpMmAgYW5kIGBsaW5raW5hdG9yYC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSB7QGxpbmsgTGludE9wdGlvbnN9LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbGludChvcHRpb25zPzogTGludE9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgbGludEdlbmVyaWMoeyBkZWZhdWx0Q29uZmlnRmlsZVBhdGg6IGdldFRlbXBsYXRlRmlsZVBhdGgoUmVwb1BhdGhzLk1hcmtkb3dubGludENsaTJDb25maWdNanMpLCAuLi5vcHRpb25zIH0pO1xufVxuZXhwb3J0IHsgdHlwZSBMaW50T3B0aW9ucyB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWRldi10b29sa2l0L2xpbnRlcnMvbWFya2Rvd25saW50JztcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTQSxTQUFTLFFBQVEsbUJBQW1CO0FBQ3BDLFNBQVMsaUJBQWlCO0FBRTFCLFNBQVMsMkJBQTJCO0FBVXBDLGVBQWlDO0FBSGpDLGVBQXNCLEtBQUssU0FBc0M7QUFDL0QsUUFBTSxZQUFZLEVBQUUsdUJBQXVCLG9CQUFvQixVQUFVLHlCQUF5QixHQUFHLEdBQUcsUUFBUSxDQUFDO0FBQ25IOyIsCiAgIm5hbWVzIjogW10KfQo=
52
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvbWFya2Rvd25saW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogTGludHMgYW4gT2JzaWRpYW4gcGx1Z2luJ3MgbWFya2Rvd246IHRoZSBnZW5lcmljIHJ1bm5lciBmcm9tIGBAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdGAsIHdoaWNoIGNvcGllc1xuICogdGhpcyBwYWNrYWdlJ3MgYC5tYXJrZG93bmxpbnQtY2xpMi5tanNgIHRlbXBsYXRlIGludG8gYSBwcm9qZWN0IHRoYXQgaGFzIG5vIGNvbmZpZ3VyYXRpb24geWV0LlxuICovXG5cbmltcG9ydCB0eXBlIHsgTGludE9wdGlvbnMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9saW50ZXJzL21hcmtkb3dubGludCc7XG5cbmltcG9ydCB7IGxpbnQgYXMgbGludEdlbmVyaWMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9saW50ZXJzL21hcmtkb3dubGludCc7XG5pbXBvcnQgeyBSZXBvUGF0aHMgfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9yZXBvLXBhdGhzJztcblxuaW1wb3J0IHsgZ2V0VGVtcGxhdGVGaWxlUGF0aCB9IGZyb20gJy4uL3RlbXBsYXRlcy50cyc7XG5cbi8qKlxuICogTGludHMgdGhlIHByb2plY3QncyBtYXJrZG93biB3aXRoIGBtYXJrZG93bmxpbnQtY2xpMmAgYW5kIGBsaW5raW5hdG9yYC5cbiAqXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSB7QGxpbmsgTGludE9wdGlvbnN9LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbGludChvcHRpb25zPzogTGludE9wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgbGludEdlbmVyaWMoeyBkZWZhdWx0Q29uZmlnRmlsZVBhdGg6IGdldFRlbXBsYXRlRmlsZVBhdGgoUmVwb1BhdGhzLk1hcmtkb3dubGludENsaTJDb25maWdNanMpLCAuLi5vcHRpb25zIH0pO1xufVxuZXhwb3J0IHsgdHlwZSBMaW50T3B0aW9ucyB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWRldi10b29sa2l0L2xpbnRlcnMvbWFya2Rvd25saW50JztcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU0EsU0FBUyxRQUFRLG1CQUFtQjtBQUNwQyxTQUFTLGlCQUFpQjtBQUUxQixTQUFTLDJCQUEyQjtBQVVwQyxlQUFpQztBQUhqQyxlQUFzQixLQUFLLFNBQXNDO0FBQy9ELFFBQU0sWUFBWSxFQUFFLHVCQUF1QixvQkFBb0IsVUFBVSx5QkFBeUIsR0FBRyxHQUFHLFFBQVEsQ0FBQztBQUNuSDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
5
5
 
6
6
  (function () {
7
7
  function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
8
+ symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
9
+ symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
10
10
  }
11
11
 
12
12
  function ensureBrowserProcess() {
13
13
  const browserProcess = {
14
14
  browser: true,
15
15
  cwd() {
16
- return '/';
16
+ return "/";
17
17
  },
18
18
  env: {},
19
- platform: 'android'
19
+ platform: "android"
20
20
  };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
21
  const existingProcess = globalThis.process;
24
-
25
22
  if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
23
  globalThis.process = browserProcess;
28
24
  return;
29
25
  }
30
-
31
26
  if (existingProcess.versions?.node) {
32
27
  return;
33
28
  }
34
-
35
29
  const existingProcessRecord = existingProcess;
36
-
37
30
  for (const [key, value] of Object.entries(browserProcess)) {
38
31
  existingProcessRecord[key] ??= value;
39
32
  }
40
-
41
- existingProcessRecord['browser'] = true;
33
+ existingProcessRecord["browser"] = true;
42
34
  }
43
35
 
44
36
  (function initEsm() {
@@ -72,4 +64,4 @@ export {
72
64
  RULE_CUSTOM_MESSAGE_RULE_NAME,
73
65
  stripOwnedRuleCustomMessageEntries
74
66
  };
75
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvb2JzaWRpYW5tZC1ydWxlLWN1c3RvbS1tZXNzYWdlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogS2VlcHMgYG9ic2lkaWFubWQvcnVsZS1jdXN0b20tbWVzc2FnZWAgZnJvbSByZS1ydW5uaW5nIGEgYnVpbHRpbiBydWxlIHRoaXMgbGlicmFyeSdzIG93biBjb25maWcgYWxyZWFkeSBzZXRzLlxuICpcbiAqIGBlc2xpbnQtcGx1Z2luLW9ic2lkaWFubWRgJ3MgcmVjb21tZW5kZWQgY29uZmlnIHR1cm5zIGBuby1jb25zb2xlYCBhbmQgYG5vLW5ldy1mdW5jYCBvZmYgYW5kIHJlLXJ1bnMgZWFjaCB0aHJvdWdoXG4gKiBgb2JzaWRpYW5tZC9ydWxlLWN1c3RvbS1tZXNzYWdlYCwgd2hpY2ggZmV0Y2hlcyB0aGUgYnVpbHRpbiBydWxlIGFuZCByZXBvcnRzIGl0cyBmaW5kaW5ncyB1bmRlciBpdHMgT1dOIHJ1bGUgaWQuIFNvXG4gKiB0aGUgc2V2ZXJpdHkgYSBjb25zdW1lciB3cml0ZXMgb24gYG5vLWNvbnNvbGVgIGlzIG5ldmVyIGNvbnN1bHRlZDogYCduby1jb25zb2xlJzogJ29mZidgIGlzIGluZXJ0LCBhbmQgdGhlIGVycm9yXG4gKiB0aGF0IHJlbWFpbnMgbmFtZXMgYSBydWxlIHRoZSBjb25zdW1lciBuZXZlciBjb25maWd1cmVkLiBUaGlzIGxpYnJhcnkgc2V0cyBib3RoIGJ1aWx0aW5zIGl0c2VsZiwgc3RyaWN0ZXIsIHNvIGluXG4gKiBldmVyeSBjb25zdW1lciB0aGUgd3JhcHBlciBhZGRlZCBub3RoaW5nIGJ1dCBhIHNlY29uZCByZXBvcnQgb2YgdGhlIHNhbWUgbGluZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IExpbnRlciB9IGZyb20gJ2VzbGludCc7XG5cbi8qKlxuICogVGhlIHJ1bGUgaWQgb2YgdGhlIHdyYXBwZXIgdGhhdCByZS1yZXBvcnRzIGJ1aWx0aW4gcnVsZXMgdW5kZXIgaXRzIG93biBuYW1lLlxuICovXG5leHBvcnQgY29uc3QgUlVMRV9DVVNUT01fTUVTU0FHRV9SVUxFX05BTUUgPSAnb2JzaWRpYW5tZC9ydWxlLWN1c3RvbS1tZXNzYWdlJztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgc3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc1BhcmFtcyB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlnIHdob3NlIGBvYnNpZGlhbm1kL3J1bGUtY3VzdG9tLW1lc3NhZ2VgIGVudHJ5IGlzIG5hcnJvd2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlnOiBMaW50ZXIuQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVpbHRpbiBydWxlIG5hbWVzIHRoaXMgbGlicmFyeSdzIG93biBjb25maWcgc2V0cywgd2hpY2ggdGhlIHdyYXBwZXIgbXVzdCBubyBsb25nZXIgcmUtcnVuLlxuICAgKi9cbiAgcmVhZG9ubHkgb3duZWRSdWxlTmFtZXM6IFJlYWRvbmx5U2V0PHN0cmluZz47XG59XG5cbi8qKlxuICogUmVtb3ZlcyBmcm9tIGEgY29uZmlnJ3MgYG9ic2lkaWFubWQvcnVsZS1jdXN0b20tbWVzc2FnZWAgb3B0aW9ucyBldmVyeSB3cmFwcGVkIHJ1bGUgbmFtZWQgaW4gYG93bmVkUnVsZU5hbWVzYC5cbiAqXG4gKiBBbiBlbnRyeSBmb3IgYSBydWxlIE5PVCBpbiB0aGUgc2V0IGtlZXBzIHJ1bm5pbmcgdGhyb3VnaCB0aGUgd3JhcHBlciwgc28gYW4gZW50cnkgdXBzdHJlYW0gYWRkcyBsYXRlciBpcyBub3RcbiAqIHNpbGVudGx5IGRyb3BwZWQuIFdoZW4gbm90aGluZyBpcyBsZWZ0IHRoZSB3cmFwcGVyIGlzIHR1cm5lZCBgb2ZmYCByYXRoZXIgdGhhbiBydW4gd2l0aCBhbiBlbXB0eSBtYXAuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzLlxuICogQHJldHVybnMgVGhlIGNvbmZpZywgdW5jaGFuZ2VkIHdoZW4gaXQgY2FycmllcyBubyBuYXJyb3dhYmxlIHdyYXBwZXIgZW50cnksIG90aGVyd2lzZSBhIG5hcnJvd2VkIGNvcHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpcE93bmVkUnVsZUN1c3RvbU1lc3NhZ2VFbnRyaWVzKHBhcmFtczogU3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc1BhcmFtcyk6IExpbnRlci5Db25maWcge1xuICBjb25zdCB7IGNvbmZpZywgb3duZWRSdWxlTmFtZXMgfSA9IHBhcmFtcztcbiAgY29uc3QgcnVsZUVudHJ5ID0gY29uZmlnLnJ1bGVzPy5bUlVMRV9DVVNUT01fTUVTU0FHRV9SVUxFX05BTUVdO1xuICBpZiAoIUFycmF5LmlzQXJyYXkocnVsZUVudHJ5KSkge1xuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBjb25zdCBbc2V2ZXJpdHksIHdyYXBwZWRSdWxlcywgLi4ucmVzdE9wdGlvbnNdID0gcnVsZUVudHJ5IGFzIHVua25vd25bXTtcbiAgaWYgKHR5cGVvZiB3cmFwcGVkUnVsZXMgIT09ICdvYmplY3QnIHx8IHdyYXBwZWRSdWxlcyA9PT0gbnVsbCkge1xuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBjb25zdCBrZXB0RW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHdyYXBwZWRSdWxlcykuZmlsdGVyKChbcnVsZU5hbWVdKSA9PiAhb3duZWRSdWxlTmFtZXMuaGFzKHJ1bGVOYW1lKSk7XG4gIGNvbnN0IG5hcnJvd2VkUnVsZUVudHJ5OiBMaW50ZXIuUnVsZUVudHJ5ID0ga2VwdEVudHJpZXMubGVuZ3RoID09PSAwXG4gICAgPyAnb2ZmJ1xuICAgIDogW3NldmVyaXR5IGFzIExpbnRlci5SdWxlU2V2ZXJpdHksIE9iamVjdC5mcm9tRW50cmllcyhrZXB0RW50cmllcyksIC4uLnJlc3RPcHRpb25zXTtcblxuICByZXR1cm4ge1xuICAgIC4uLmNvbmZpZyxcbiAgICBydWxlczoge1xuICAgICAgLi4uY29uZmlnLnJ1bGVzLFxuICAgICAgW1JVTEVfQ1VTVE9NX01FU1NBR0VfUlVMRV9OQU1FXTogbmFycm93ZWRSdWxlRW50cnlcbiAgICB9XG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJPLE1BQU0sZ0NBQWdDO0FBMEJ0QyxTQUFTLG1DQUFtQyxRQUFpRTtBQUNsSCxRQUFNLEVBQUUsUUFBUSxlQUFlLElBQUk7QUFDbkMsUUFBTSxZQUFZLE9BQU8sUUFBUSw2QkFBNkI7QUFDOUQsTUFBSSxDQUFDLE1BQU0sUUFBUSxTQUFTLEdBQUc7QUFDN0IsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLENBQUMsVUFBVSxjQUFjLEdBQUcsV0FBVyxJQUFJO0FBQ2pELE1BQUksT0FBTyxpQkFBaUIsWUFBWSxpQkFBaUIsTUFBTTtBQUM3RCxXQUFPO0FBQUEsRUFDVDtBQUVBLFFBQU0sY0FBYyxPQUFPLFFBQVEsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsTUFBTSxDQUFDLGVBQWUsSUFBSSxRQUFRLENBQUM7QUFDckcsUUFBTSxvQkFBc0MsWUFBWSxXQUFXLElBQy9ELFFBQ0EsQ0FBQyxVQUFpQyxPQUFPLFlBQVksV0FBVyxHQUFHLEdBQUcsV0FBVztBQUVyRixTQUFPO0FBQUEsSUFDTCxHQUFHO0FBQUEsSUFDSCxPQUFPO0FBQUEsTUFDTCxHQUFHLE9BQU87QUFBQSxNQUNWLENBQUMsNkJBQTZCLEdBQUc7QUFBQSxJQUNuQztBQUFBLEVBQ0Y7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
67
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvb2JzaWRpYW5tZC1ydWxlLWN1c3RvbS1tZXNzYWdlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogS2VlcHMgYG9ic2lkaWFubWQvcnVsZS1jdXN0b20tbWVzc2FnZWAgZnJvbSByZS1ydW5uaW5nIGEgYnVpbHRpbiBydWxlIHRoaXMgbGlicmFyeSdzIG93biBjb25maWcgYWxyZWFkeSBzZXRzLlxuICpcbiAqIGBlc2xpbnQtcGx1Z2luLW9ic2lkaWFubWRgJ3MgcmVjb21tZW5kZWQgY29uZmlnIHR1cm5zIGBuby1jb25zb2xlYCBhbmQgYG5vLW5ldy1mdW5jYCBvZmYgYW5kIHJlLXJ1bnMgZWFjaCB0aHJvdWdoXG4gKiBgb2JzaWRpYW5tZC9ydWxlLWN1c3RvbS1tZXNzYWdlYCwgd2hpY2ggZmV0Y2hlcyB0aGUgYnVpbHRpbiBydWxlIGFuZCByZXBvcnRzIGl0cyBmaW5kaW5ncyB1bmRlciBpdHMgT1dOIHJ1bGUgaWQuIFNvXG4gKiB0aGUgc2V2ZXJpdHkgYSBjb25zdW1lciB3cml0ZXMgb24gYG5vLWNvbnNvbGVgIGlzIG5ldmVyIGNvbnN1bHRlZDogYCduby1jb25zb2xlJzogJ29mZidgIGlzIGluZXJ0LCBhbmQgdGhlIGVycm9yXG4gKiB0aGF0IHJlbWFpbnMgbmFtZXMgYSBydWxlIHRoZSBjb25zdW1lciBuZXZlciBjb25maWd1cmVkLiBUaGlzIGxpYnJhcnkgc2V0cyBib3RoIGJ1aWx0aW5zIGl0c2VsZiwgc3RyaWN0ZXIsIHNvIGluXG4gKiBldmVyeSBjb25zdW1lciB0aGUgd3JhcHBlciBhZGRlZCBub3RoaW5nIGJ1dCBhIHNlY29uZCByZXBvcnQgb2YgdGhlIHNhbWUgbGluZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IExpbnRlciB9IGZyb20gJ2VzbGludCc7XG5cbi8qKlxuICogVGhlIHJ1bGUgaWQgb2YgdGhlIHdyYXBwZXIgdGhhdCByZS1yZXBvcnRzIGJ1aWx0aW4gcnVsZXMgdW5kZXIgaXRzIG93biBuYW1lLlxuICovXG5leHBvcnQgY29uc3QgUlVMRV9DVVNUT01fTUVTU0FHRV9SVUxFX05BTUUgPSAnb2JzaWRpYW5tZC9ydWxlLWN1c3RvbS1tZXNzYWdlJztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGZvciB7QGxpbmsgc3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc1BhcmFtcyB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlnIHdob3NlIGBvYnNpZGlhbm1kL3J1bGUtY3VzdG9tLW1lc3NhZ2VgIGVudHJ5IGlzIG5hcnJvd2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlnOiBMaW50ZXIuQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVpbHRpbiBydWxlIG5hbWVzIHRoaXMgbGlicmFyeSdzIG93biBjb25maWcgc2V0cywgd2hpY2ggdGhlIHdyYXBwZXIgbXVzdCBubyBsb25nZXIgcmUtcnVuLlxuICAgKi9cbiAgcmVhZG9ubHkgb3duZWRSdWxlTmFtZXM6IFJlYWRvbmx5U2V0PHN0cmluZz47XG59XG5cbi8qKlxuICogUmVtb3ZlcyBmcm9tIGEgY29uZmlnJ3MgYG9ic2lkaWFubWQvcnVsZS1jdXN0b20tbWVzc2FnZWAgb3B0aW9ucyBldmVyeSB3cmFwcGVkIHJ1bGUgbmFtZWQgaW4gYG93bmVkUnVsZU5hbWVzYC5cbiAqXG4gKiBBbiBlbnRyeSBmb3IgYSBydWxlIE5PVCBpbiB0aGUgc2V0IGtlZXBzIHJ1bm5pbmcgdGhyb3VnaCB0aGUgd3JhcHBlciwgc28gYW4gZW50cnkgdXBzdHJlYW0gYWRkcyBsYXRlciBpcyBub3RcbiAqIHNpbGVudGx5IGRyb3BwZWQuIFdoZW4gbm90aGluZyBpcyBsZWZ0IHRoZSB3cmFwcGVyIGlzIHR1cm5lZCBgb2ZmYCByYXRoZXIgdGhhbiBydW4gd2l0aCBhbiBlbXB0eSBtYXAuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzLlxuICogQHJldHVybnMgVGhlIGNvbmZpZywgdW5jaGFuZ2VkIHdoZW4gaXQgY2FycmllcyBubyBuYXJyb3dhYmxlIHdyYXBwZXIgZW50cnksIG90aGVyd2lzZSBhIG5hcnJvd2VkIGNvcHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpcE93bmVkUnVsZUN1c3RvbU1lc3NhZ2VFbnRyaWVzKHBhcmFtczogU3RyaXBPd25lZFJ1bGVDdXN0b21NZXNzYWdlRW50cmllc1BhcmFtcyk6IExpbnRlci5Db25maWcge1xuICBjb25zdCB7IGNvbmZpZywgb3duZWRSdWxlTmFtZXMgfSA9IHBhcmFtcztcbiAgY29uc3QgcnVsZUVudHJ5ID0gY29uZmlnLnJ1bGVzPy5bUlVMRV9DVVNUT01fTUVTU0FHRV9SVUxFX05BTUVdO1xuICBpZiAoIUFycmF5LmlzQXJyYXkocnVsZUVudHJ5KSkge1xuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBjb25zdCBbc2V2ZXJpdHksIHdyYXBwZWRSdWxlcywgLi4ucmVzdE9wdGlvbnNdID0gcnVsZUVudHJ5IGFzIHVua25vd25bXTtcbiAgaWYgKHR5cGVvZiB3cmFwcGVkUnVsZXMgIT09ICdvYmplY3QnIHx8IHdyYXBwZWRSdWxlcyA9PT0gbnVsbCkge1xuICAgIHJldHVybiBjb25maWc7XG4gIH1cblxuICBjb25zdCBrZXB0RW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHdyYXBwZWRSdWxlcykuZmlsdGVyKChbcnVsZU5hbWVdKSA9PiAhb3duZWRSdWxlTmFtZXMuaGFzKHJ1bGVOYW1lKSk7XG4gIGNvbnN0IG5hcnJvd2VkUnVsZUVudHJ5OiBMaW50ZXIuUnVsZUVudHJ5ID0ga2VwdEVudHJpZXMubGVuZ3RoID09PSAwXG4gICAgPyAnb2ZmJ1xuICAgIDogW3NldmVyaXR5IGFzIExpbnRlci5SdWxlU2V2ZXJpdHksIE9iamVjdC5mcm9tRW50cmllcyhrZXB0RW50cmllcyksIC4uLnJlc3RPcHRpb25zXTtcblxuICByZXR1cm4ge1xuICAgIC4uLmNvbmZpZyxcbiAgICBydWxlczoge1xuICAgICAgLi4uY29uZmlnLnJ1bGVzLFxuICAgICAgW1JVTEVfQ1VTVE9NX01FU1NBR0VfUlVMRV9OQU1FXTogbmFycm93ZWRSdWxlRW50cnlcbiAgICB9XG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlCTyxNQUFNLGdDQUFnQztBQTBCdEMsU0FBUyxtQ0FBbUMsUUFBaUU7QUFDbEgsUUFBTSxFQUFFLFFBQVEsZUFBZSxJQUFJO0FBQ25DLFFBQU0sWUFBWSxPQUFPLFFBQVEsNkJBQTZCO0FBQzlELE1BQUksQ0FBQyxNQUFNLFFBQVEsU0FBUyxHQUFHO0FBQzdCLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxDQUFDLFVBQVUsY0FBYyxHQUFHLFdBQVcsSUFBSTtBQUNqRCxNQUFJLE9BQU8saUJBQWlCLFlBQVksaUJBQWlCLE1BQU07QUFDN0QsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLGNBQWMsT0FBTyxRQUFRLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLE1BQU0sQ0FBQyxlQUFlLElBQUksUUFBUSxDQUFDO0FBQ3JHLFFBQU0sb0JBQXNDLFlBQVksV0FBVyxJQUMvRCxRQUNBLENBQUMsVUFBaUMsT0FBTyxZQUFZLFdBQVcsR0FBRyxHQUFHLFdBQVc7QUFFckYsU0FBTztBQUFBLElBQ0wsR0FBRztBQUFBLElBQ0gsT0FBTztBQUFBLE1BQ0wsR0FBRyxPQUFPO0FBQUEsTUFDVixDQUFDLDZCQUE2QixHQUFHO0FBQUEsSUFDbkM7QUFBQSxFQUNGO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,81 @@
1
+ /// <reference path="../index.d.mts" />
2
+ /**
3
+ * @file
4
+ *
5
+ * The plugin names the plugin-name lint rules look for, and the matcher they share.
6
+ *
7
+ * Whenever text mentions an Obsidian plugin by name, the name is marked as code: backticks in markdown and in code
8
+ * comments, a `<code>` element in UI. The ESLint rules `plugin-name-as-code` / `plugin-name-as-code-in-ui` and the
9
+ * markdownlint rule `plugin-name-as-code` all read the one list here, so a name added to it is checked everywhere at
10
+ * once.
11
+ *
12
+ * The list is the display name (`manifest.json` `name`) of every `mnaoumov/obsidian-*` plugin, plus the third-party
13
+ * plugins those repositories mention. A few third-party names (`Linter`, `Projects`, `Copilot`) are left out on
14
+ * purpose: they are ordinary words, so matching them bare reports prose rather than plugin names. A project adds its
15
+ * own `manifest.json` `name` automatically, and can extend the list through each rule's `additionalPluginNames`
16
+ * option.
17
+ */
18
+ /**
19
+ * The display names of the `mnaoumov/obsidian-*` plugins.
20
+ */
21
+ export declare const MNAOUMOV_PLUGIN_NAMES: readonly string[];
22
+ /**
23
+ * The display names of the third-party plugins the `mnaoumov/obsidian-*` repositories mention.
24
+ */
25
+ export declare const THIRD_PARTY_PLUGIN_NAMES: readonly string[];
26
+ /**
27
+ * Params for {@link getPluginNames}.
28
+ */
29
+ export interface GetPluginNamesParams {
30
+ /**
31
+ * Names to check on top of the shared list.
32
+ */
33
+ readonly additionalPluginNames?: readonly string[] | undefined;
34
+ /**
35
+ * The project root, whose `manifest.json` `name` is added to the list when it has one.
36
+ */
37
+ readonly cwd: string;
38
+ }
39
+ /**
40
+ * A plugin name found in a text.
41
+ */
42
+ export interface PluginNameMatch {
43
+ /**
44
+ * The offset of the name in the text.
45
+ */
46
+ readonly index: number;
47
+ /**
48
+ * The name found.
49
+ */
50
+ readonly name: string;
51
+ }
52
+ /**
53
+ * Options of a rule that checks plugin names.
54
+ */
55
+ export interface PluginNameRuleOptions {
56
+ /**
57
+ * Names to check on top of the shared list.
58
+ */
59
+ readonly additionalPluginNames?: readonly string[];
60
+ }
61
+ /**
62
+ * Finds every whole-word occurrence of a plugin name in a text, skipping those inside a range an excluded pattern
63
+ * matches.
64
+ *
65
+ * Matching is case-sensitive, so the lowercase `dataview` of an identifier or a package name is not a plugin name. A
66
+ * longer name wins over a shorter one it contains.
67
+ *
68
+ * @param text - The text to search.
69
+ * @param pluginNames - The names to look for.
70
+ * @param excludedPatterns - Global patterns whose matches hide the names inside them: a code span, a link, a URL.
71
+ * @returns The names found, in text order.
72
+ */
73
+ export declare function findPluginNameMatches(text: string, pluginNames: readonly string[], excludedPatterns?: readonly RegExp[]): PluginNameMatch[];
74
+ /**
75
+ * Builds the list of plugin names a project checks: the shared list, the project's own `manifest.json` `name`, and
76
+ * any names the project adds.
77
+ *
78
+ * @param params - The {@link GetPluginNamesParams}.
79
+ * @returns The names, without duplicates.
80
+ */
81
+ export declare function getPluginNames(params: GetPluginNamesParams): string[];
@@ -0,0 +1,141 @@
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
+
6
+ (function () {
7
+ function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
+ symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
9
+ symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
10
+ }
11
+
12
+ function ensureBrowserProcess() {
13
+ const browserProcess = {
14
+ browser: true,
15
+ cwd() {
16
+ return "/";
17
+ },
18
+ env: {},
19
+ platform: "android"
20
+ };
21
+ const existingProcess = globalThis.process;
22
+ if (!existingProcess) {
23
+ globalThis.process = browserProcess;
24
+ return;
25
+ }
26
+ if (existingProcess.versions?.node) {
27
+ return;
28
+ }
29
+ const existingProcessRecord = existingProcess;
30
+ for (const [key, value] of Object.entries(browserProcess)) {
31
+ existingProcessRecord[key] ??= value;
32
+ }
33
+ existingProcessRecord["browser"] = true;
34
+ }
35
+
36
+ (function initEsm() {
37
+ ensureDisposeSymbols();
38
+ ensureBrowserProcess();
39
+ })();
40
+ })();
41
+
42
+ import {
43
+ existsSync,
44
+ readFileSync
45
+ } from "node:fs";
46
+ import { join } from "node:path";
47
+ const MNAOUMOV_PLUGIN_NAMES = [
48
+ "Advanced Debug Mode",
49
+ "Advanced Exclude",
50
+ "Advanced Markdown Export",
51
+ "Advanced Metadata Cache",
52
+ "Advanced Note Composer",
53
+ "Advanced Rename and Delete Handler",
54
+ "Alias Quick Switcher",
55
+ "App Update Notifier",
56
+ "Backlink Cache",
57
+ "Backlink Full Path",
58
+ "Better Markdown Links",
59
+ "CodeScript Toolkit",
60
+ "Consistent Attachments and Links",
61
+ "Custom Attachment Location",
62
+ "Edit Link Alias",
63
+ "Email to Vault",
64
+ "Embed HTML",
65
+ "External Rename Handler",
66
+ "File Bundles",
67
+ "File Explorer Reload",
68
+ "Fix Tab Size",
69
+ "Frontmatter Markdown Links",
70
+ "Insert Multiple Attachments",
71
+ "Link Picker",
72
+ "More Events",
73
+ "Nested Properties",
74
+ "New Note Fixer",
75
+ "Preserve Frontmatter Formatting",
76
+ "Refresh Any View",
77
+ "Root Folder Context Menu",
78
+ "Sample Plugin Extended",
79
+ "Smart Rename"
80
+ ];
81
+ const THIRD_PARTY_PLUGIN_NAMES = [
82
+ "Advanced Tables",
83
+ "Advanced URI",
84
+ "Dataview",
85
+ "Excalidraw",
86
+ "Folder Notes",
87
+ "Hover Editor",
88
+ "Kanban",
89
+ "Make.md",
90
+ "Natural Language Dates",
91
+ "Obsidian Git",
92
+ "Omnisearch",
93
+ "Periodic Notes",
94
+ "QuickAdd",
95
+ "Smart Connections",
96
+ "Style Settings",
97
+ "Templater",
98
+ "Text Generator"
99
+ ];
100
+ const LEADING_BOUNDARY = String.raw`(?<![\w\`./\\-])`;
101
+ const TRAILING_BOUNDARY = String.raw`(?![\w\`-]|[./\\]\w)`;
102
+ function findPluginNameMatches(text, pluginNames, excludedPatterns = []) {
103
+ if (pluginNames.length === 0) {
104
+ return [];
105
+ }
106
+ const excludedRanges = excludedPatterns.flatMap((pattern) => Array.from(text.matchAll(pattern), (match) => [match.index, match.index + match[0].length]));
107
+ const alternatives = [...pluginNames].sort((a, b) => b.length - a.length).map((name) => escapeRegExp(name)).join("|");
108
+ const nameRegExp = new RegExp(`${LEADING_BOUNDARY}(?:${alternatives})${TRAILING_BOUNDARY}`, "g");
109
+ return Array.from(text.matchAll(nameRegExp), (match) => ({ index: match.index, name: match[0] })).filter((match) => excludedRanges.every(([start, end]) => match.index >= end || match.index + match.name.length <= start));
110
+ }
111
+ function getPluginNames(params) {
112
+ const names = /* @__PURE__ */ new Set([...MNAOUMOV_PLUGIN_NAMES, ...THIRD_PARTY_PLUGIN_NAMES, ...params.additionalPluginNames ?? []]);
113
+ const ownName = readManifestName(params.cwd);
114
+ if (ownName) {
115
+ names.add(ownName);
116
+ }
117
+ return [...names];
118
+ }
119
+ function escapeRegExp(text) {
120
+ return text.replaceAll(/[$()*+.?[\\\]^{|}]/g, String.raw`\$&`);
121
+ }
122
+ function readManifestName(cwd) {
123
+ const manifestPath = join(cwd, "manifest.json");
124
+ if (!existsSync(manifestPath)) {
125
+ return null;
126
+ }
127
+ try {
128
+ const manifest = JSON.parse(readFileSync(manifestPath, "utf-8"));
129
+ const name = manifest?.["name"];
130
+ return typeof name === "string" && name !== "" ? name : null;
131
+ } catch {
132
+ return null;
133
+ }
134
+ }
135
+ export {
136
+ MNAOUMOV_PLUGIN_NAMES,
137
+ THIRD_PARTY_PLUGIN_NAMES,
138
+ findPluginNameMatches,
139
+ getPluginNames
140
+ };
141
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2xpbnRlcnMvcGx1Z2luLW5hbWVzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhlIHBsdWdpbiBuYW1lcyB0aGUgcGx1Z2luLW5hbWUgbGludCBydWxlcyBsb29rIGZvciwgYW5kIHRoZSBtYXRjaGVyIHRoZXkgc2hhcmUuXG4gKlxuICogV2hlbmV2ZXIgdGV4dCBtZW50aW9ucyBhbiBPYnNpZGlhbiBwbHVnaW4gYnkgbmFtZSwgdGhlIG5hbWUgaXMgbWFya2VkIGFzIGNvZGU6IGJhY2t0aWNrcyBpbiBtYXJrZG93biBhbmQgaW4gY29kZVxuICogY29tbWVudHMsIGEgYDxjb2RlPmAgZWxlbWVudCBpbiBVSS4gVGhlIEVTTGludCBydWxlcyBgcGx1Z2luLW5hbWUtYXMtY29kZWAgLyBgcGx1Z2luLW5hbWUtYXMtY29kZS1pbi11aWAgYW5kIHRoZVxuICogbWFya2Rvd25saW50IHJ1bGUgYHBsdWdpbi1uYW1lLWFzLWNvZGVgIGFsbCByZWFkIHRoZSBvbmUgbGlzdCBoZXJlLCBzbyBhIG5hbWUgYWRkZWQgdG8gaXQgaXMgY2hlY2tlZCBldmVyeXdoZXJlIGF0XG4gKiBvbmNlLlxuICpcbiAqIFRoZSBsaXN0IGlzIHRoZSBkaXNwbGF5IG5hbWUgKGBtYW5pZmVzdC5qc29uYCBgbmFtZWApIG9mIGV2ZXJ5IGBtbmFvdW1vdi9vYnNpZGlhbi0qYCBwbHVnaW4sIHBsdXMgdGhlIHRoaXJkLXBhcnR5XG4gKiBwbHVnaW5zIHRob3NlIHJlcG9zaXRvcmllcyBtZW50aW9uLiBBIGZldyB0aGlyZC1wYXJ0eSBuYW1lcyAoYExpbnRlcmAsIGBQcm9qZWN0c2AsIGBDb3BpbG90YCkgYXJlIGxlZnQgb3V0IG9uXG4gKiBwdXJwb3NlOiB0aGV5IGFyZSBvcmRpbmFyeSB3b3Jkcywgc28gbWF0Y2hpbmcgdGhlbSBiYXJlIHJlcG9ydHMgcHJvc2UgcmF0aGVyIHRoYW4gcGx1Z2luIG5hbWVzLiBBIHByb2plY3QgYWRkcyBpdHNcbiAqIG93biBgbWFuaWZlc3QuanNvbmAgYG5hbWVgIGF1dG9tYXRpY2FsbHksIGFuZCBjYW4gZXh0ZW5kIHRoZSBsaXN0IHRocm91Z2ggZWFjaCBydWxlJ3MgYGFkZGl0aW9uYWxQbHVnaW5OYW1lc2BcbiAqIG9wdGlvbi5cbiAqL1xuXG5pbXBvcnQge1xuICBleGlzdHNTeW5jLFxuICByZWFkRmlsZVN5bmNcbn0gZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgeyBqb2luIH0gZnJvbSAnbm9kZTpwYXRoJztcblxuLyoqXG4gKiBUaGUgZGlzcGxheSBuYW1lcyBvZiB0aGUgYG1uYW91bW92L29ic2lkaWFuLSpgIHBsdWdpbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBNTkFPVU1PVl9QTFVHSU5fTkFNRVM6IHJlYWRvbmx5IHN0cmluZ1tdID0gW1xuICAnQWR2YW5jZWQgRGVidWcgTW9kZScsXG4gICdBZHZhbmNlZCBFeGNsdWRlJyxcbiAgJ0FkdmFuY2VkIE1hcmtkb3duIEV4cG9ydCcsXG4gICdBZHZhbmNlZCBNZXRhZGF0YSBDYWNoZScsXG4gICdBZHZhbmNlZCBOb3RlIENvbXBvc2VyJyxcbiAgJ0FkdmFuY2VkIFJlbmFtZSBhbmQgRGVsZXRlIEhhbmRsZXInLFxuICAnQWxpYXMgUXVpY2sgU3dpdGNoZXInLFxuICAnQXBwIFVwZGF0ZSBOb3RpZmllcicsXG4gICdCYWNrbGluayBDYWNoZScsXG4gICdCYWNrbGluayBGdWxsIFBhdGgnLFxuICAnQmV0dGVyIE1hcmtkb3duIExpbmtzJyxcbiAgJ0NvZGVTY3JpcHQgVG9vbGtpdCcsXG4gICdDb25zaXN0ZW50IEF0dGFjaG1lbnRzIGFuZCBMaW5rcycsXG4gICdDdXN0b20gQXR0YWNobWVudCBMb2NhdGlvbicsXG4gICdFZGl0IExpbmsgQWxpYXMnLFxuICAnRW1haWwgdG8gVmF1bHQnLFxuICAnRW1iZWQgSFRNTCcsXG4gICdFeHRlcm5hbCBSZW5hbWUgSGFuZGxlcicsXG4gICdGaWxlIEJ1bmRsZXMnLFxuICAnRmlsZSBFeHBsb3JlciBSZWxvYWQnLFxuICAnRml4IFRhYiBTaXplJyxcbiAgJ0Zyb250bWF0dGVyIE1hcmtkb3duIExpbmtzJyxcbiAgJ0luc2VydCBNdWx0aXBsZSBBdHRhY2htZW50cycsXG4gICdMaW5rIFBpY2tlcicsXG4gICdNb3JlIEV2ZW50cycsXG4gICdOZXN0ZWQgUHJvcGVydGllcycsXG4gICdOZXcgTm90ZSBGaXhlcicsXG4gICdQcmVzZXJ2ZSBGcm9udG1hdHRlciBGb3JtYXR0aW5nJyxcbiAgJ1JlZnJlc2ggQW55IFZpZXcnLFxuICAnUm9vdCBGb2xkZXIgQ29udGV4dCBNZW51JyxcbiAgJ1NhbXBsZSBQbHVnaW4gRXh0ZW5kZWQnLFxuICAnU21hcnQgUmVuYW1lJ1xuXTtcblxuLyoqXG4gKiBUaGUgZGlzcGxheSBuYW1lcyBvZiB0aGUgdGhpcmQtcGFydHkgcGx1Z2lucyB0aGUgYG1uYW91bW92L29ic2lkaWFuLSpgIHJlcG9zaXRvcmllcyBtZW50aW9uLlxuICovXG5leHBvcnQgY29uc3QgVEhJUkRfUEFSVFlfUExVR0lOX05BTUVTOiByZWFkb25seSBzdHJpbmdbXSA9IFtcbiAgJ0FkdmFuY2VkIFRhYmxlcycsXG4gICdBZHZhbmNlZCBVUkknLFxuICAnRGF0YXZpZXcnLFxuICAnRXhjYWxpZHJhdycsXG4gICdGb2xkZXIgTm90ZXMnLFxuICAnSG92ZXIgRWRpdG9yJyxcbiAgJ0thbmJhbicsXG4gICdNYWtlLm1kJyxcbiAgJ05hdHVyYWwgTGFuZ3VhZ2UgRGF0ZXMnLFxuICAnT2JzaWRpYW4gR2l0JyxcbiAgJ09tbmlzZWFyY2gnLFxuICAnUGVyaW9kaWMgTm90ZXMnLFxuICAnUXVpY2tBZGQnLFxuICAnU21hcnQgQ29ubmVjdGlvbnMnLFxuICAnU3R5bGUgU2V0dGluZ3MnLFxuICAnVGVtcGxhdGVyJyxcbiAgJ1RleHQgR2VuZXJhdG9yJ1xuXTtcblxuLyoqXG4gKiBQYXJhbXMgZm9yIHtAbGluayBnZXRQbHVnaW5OYW1lc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UGx1Z2luTmFtZXNQYXJhbXMge1xuICAvKipcbiAgICogTmFtZXMgdG8gY2hlY2sgb24gdG9wIG9mIHRoZSBzaGFyZWQgbGlzdC5cbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxQbHVnaW5OYW1lcz86IHJlYWRvbmx5IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvamVjdCByb290LCB3aG9zZSBgbWFuaWZlc3QuanNvbmAgYG5hbWVgIGlzIGFkZGVkIHRvIHRoZSBsaXN0IHdoZW4gaXQgaGFzIG9uZS5cbiAgICovXG4gIHJlYWRvbmx5IGN3ZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgcGx1Z2luIG5hbWUgZm91bmQgaW4gYSB0ZXh0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpbk5hbWVNYXRjaCB7XG4gIC8qKlxuICAgKiBUaGUgb2Zmc2V0IG9mIHRoZSBuYW1lIGluIHRoZSB0ZXh0LlxuICAgKi9cbiAgcmVhZG9ubHkgaW5kZXg6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG5hbWUgZm91bmQuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBvZiBhIHJ1bGUgdGhhdCBjaGVja3MgcGx1Z2luIG5hbWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpbk5hbWVSdWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOYW1lcyB0byBjaGVjayBvbiB0b3Agb2YgdGhlIHNoYXJlZCBsaXN0LlxuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbFBsdWdpbk5hbWVzPzogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbi8qKlxuICogQ2hhcmFjdGVycyB0aGF0LCByaWdodCBiZWZvcmUgYSBuYW1lLCBtYWtlIGl0IHBhcnQgb2YgYSBsb25nZXIgdG9rZW46IGEgd29yZCwgYSBjb2RlIHNwYW4sIGEga2ViYWItY2FzZVxuICogaWRlbnRpZmllciwgYSBwYXRoIG9yIGEgbWVtYmVyIGFjY2Vzcy5cbiAqL1xuY29uc3QgTEVBRElOR19CT1VOREFSWSA9IFN0cmluZy5yYXdgKD88IVtcXHdcXGAuL1xcXFwtXSlgO1xuXG4vKipcbiAqIENoYXJhY3RlcnMgdGhhdCwgcmlnaHQgYWZ0ZXIgYSBuYW1lLCBtYWtlIGl0IHBhcnQgb2YgYSBsb25nZXIgdG9rZW4uIEEgYC5gIG9yIGAvYCBpcyBhIGJvdW5kYXJ5IG9ubHkgd2hlbiBhIHdvcmRcbiAqIGZvbGxvd3MgaXQsIHNvIGEgbmFtZSBlbmRpbmcgYSBzZW50ZW5jZSBzdGlsbCBtYXRjaGVzLlxuICovXG5jb25zdCBUUkFJTElOR19CT1VOREFSWSA9IFN0cmluZy5yYXdgKD8hW1xcd1xcYC1dfFsuL1xcXFxdXFx3KWA7XG5cbi8qKlxuICogRmluZHMgZXZlcnkgd2hvbGUtd29yZCBvY2N1cnJlbmNlIG9mIGEgcGx1Z2luIG5hbWUgaW4gYSB0ZXh0LCBza2lwcGluZyB0aG9zZSBpbnNpZGUgYSByYW5nZSBhbiBleGNsdWRlZCBwYXR0ZXJuXG4gKiBtYXRjaGVzLlxuICpcbiAqIE1hdGNoaW5nIGlzIGNhc2Utc2Vuc2l0aXZlLCBzbyB0aGUgbG93ZXJjYXNlIGBkYXRhdmlld2Agb2YgYW4gaWRlbnRpZmllciBvciBhIHBhY2thZ2UgbmFtZSBpcyBub3QgYSBwbHVnaW4gbmFtZS4gQVxuICogbG9uZ2VyIG5hbWUgd2lucyBvdmVyIGEgc2hvcnRlciBvbmUgaXQgY29udGFpbnMuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBzZWFyY2guXG4gKiBAcGFyYW0gcGx1Z2luTmFtZXMgLSBUaGUgbmFtZXMgdG8gbG9vayBmb3IuXG4gKiBAcGFyYW0gZXhjbHVkZWRQYXR0ZXJucyAtIEdsb2JhbCBwYXR0ZXJucyB3aG9zZSBtYXRjaGVzIGhpZGUgdGhlIG5hbWVzIGluc2lkZSB0aGVtOiBhIGNvZGUgc3BhbiwgYSBsaW5rLCBhIFVSTC5cbiAqIEByZXR1cm5zIFRoZSBuYW1lcyBmb3VuZCwgaW4gdGV4dCBvcmRlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmRQbHVnaW5OYW1lTWF0Y2hlcyh0ZXh0OiBzdHJpbmcsIHBsdWdpbk5hbWVzOiByZWFkb25seSBzdHJpbmdbXSwgZXhjbHVkZWRQYXR0ZXJuczogcmVhZG9ubHkgUmVnRXhwW10gPSBbXSk6IFBsdWdpbk5hbWVNYXRjaFtdIHtcbiAgaWYgKHBsdWdpbk5hbWVzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGNvbnN0IGV4Y2x1ZGVkUmFuZ2VzID0gZXhjbHVkZWRQYXR0ZXJucy5mbGF0TWFwKChwYXR0ZXJuKSA9PiBBcnJheS5mcm9tKHRleHQubWF0Y2hBbGwocGF0dGVybiksIChtYXRjaCkgPT4gW21hdGNoLmluZGV4LCBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aF0gYXMgY29uc3QpKTtcbiAgY29uc3QgYWx0ZXJuYXRpdmVzID0gWy4uLnBsdWdpbk5hbWVzXS5zb3J0KChhLCBiKSA9PiBiLmxlbmd0aCAtIGEubGVuZ3RoKS5tYXAoKG5hbWUpID0+IGVzY2FwZVJlZ0V4cChuYW1lKSkuam9pbignfCcpO1xuICBjb25zdCBuYW1lUmVnRXhwID0gbmV3IFJlZ0V4cChgJHtMRUFESU5HX0JPVU5EQVJZfSg/OiR7YWx0ZXJuYXRpdmVzfSkke1RSQUlMSU5HX0JPVU5EQVJZfWAsICdnJyk7XG5cbiAgcmV0dXJuIEFycmF5LmZyb20odGV4dC5tYXRjaEFsbChuYW1lUmVnRXhwKSwgKG1hdGNoKSA9PiAoeyBpbmRleDogbWF0Y2guaW5kZXgsIG5hbWU6IG1hdGNoWzBdIH0pKVxuICAgIC5maWx0ZXIoKG1hdGNoKSA9PiBleGNsdWRlZFJhbmdlcy5ldmVyeSgoW3N0YXJ0LCBlbmRdKSA9PiBtYXRjaC5pbmRleCA+PSBlbmQgfHwgbWF0Y2guaW5kZXggKyBtYXRjaC5uYW1lLmxlbmd0aCA8PSBzdGFydCkpO1xufVxuXG4vKipcbiAqIEJ1aWxkcyB0aGUgbGlzdCBvZiBwbHVnaW4gbmFtZXMgYSBwcm9qZWN0IGNoZWNrczogdGhlIHNoYXJlZCBsaXN0LCB0aGUgcHJvamVjdCdzIG93biBgbWFuaWZlc3QuanNvbmAgYG5hbWVgLCBhbmRcbiAqIGFueSBuYW1lcyB0aGUgcHJvamVjdCBhZGRzLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUge0BsaW5rIEdldFBsdWdpbk5hbWVzUGFyYW1zfS5cbiAqIEByZXR1cm5zIFRoZSBuYW1lcywgd2l0aG91dCBkdXBsaWNhdGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGx1Z2luTmFtZXMocGFyYW1zOiBHZXRQbHVnaW5OYW1lc1BhcmFtcyk6IHN0cmluZ1tdIHtcbiAgY29uc3QgbmFtZXMgPSBuZXcgU2V0KFsuLi5NTkFPVU1PVl9QTFVHSU5fTkFNRVMsIC4uLlRISVJEX1BBUlRZX1BMVUdJTl9OQU1FUywgLi4ucGFyYW1zLmFkZGl0aW9uYWxQbHVnaW5OYW1lcyA/PyBbXV0pO1xuICBjb25zdCBvd25OYW1lID0gcmVhZE1hbmlmZXN0TmFtZShwYXJhbXMuY3dkKTtcbiAgaWYgKG93bk5hbWUpIHtcbiAgICBuYW1lcy5hZGQob3duTmFtZSk7XG4gIH1cbiAgcmV0dXJuIFsuLi5uYW1lc107XG59XG5cbi8qKlxuICogRXNjYXBlcyBhIHN0cmluZyBmb3IgdXNlIGFzIGEgbGl0ZXJhbCBpbnNpZGUgYSByZWd1bGFyIGV4cHJlc3Npb24uXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyBUaGUgZXNjYXBlZCB0ZXh0LlxuICovXG5mdW5jdGlvbiBlc2NhcGVSZWdFeHAodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHRleHQucmVwbGFjZUFsbCgvWyQoKSorLj9bXFxcXFxcXV57fH1dL2csIFN0cmluZy5yYXdgXFwkJmApO1xufVxuXG4vKipcbiAqIFJlYWRzIHRoZSBgbmFtZWAgb2YgdGhlIHByb2plY3QncyBgbWFuaWZlc3QuanNvbmAuXG4gKlxuICogQHBhcmFtIGN3ZCAtIFRoZSBwcm9qZWN0IHJvb3QuXG4gKiBAcmV0dXJucyBUaGUgbmFtZSwgb3IgYG51bGxgIHdoZW4gdGhlcmUgaXMgbm8gbWFuaWZlc3QsIGl0IGRvZXMgbm90IHBhcnNlLCBvciBpdHMgYG5hbWVgIGlzIG5vdCBhIG5vbi1lbXB0eSBzdHJpbmcuXG4gKi9cbmZ1bmN0aW9uIHJlYWRNYW5pZmVzdE5hbWUoY3dkOiBzdHJpbmcpOiBudWxsIHwgc3RyaW5nIHtcbiAgY29uc3QgbWFuaWZlc3RQYXRoID0gam9pbihjd2QsICdtYW5pZmVzdC5qc29uJyk7XG4gIGlmICghZXhpc3RzU3luYyhtYW5pZmVzdFBhdGgpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB0cnkge1xuICAgIGNvbnN0IG1hbmlmZXN0OiB1bmtub3duID0gSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMobWFuaWZlc3RQYXRoLCAndXRmLTgnKSk7XG4gICAgY29uc3QgbmFtZSA9IChtYW5pZmVzdCBhcyBudWxsIHwgUGFydGlhbDxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4pPy5bJ25hbWUnXTtcbiAgICByZXR1cm4gdHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnICYmIG5hbWUgIT09ICcnID8gbmFtZSA6IG51bGw7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlCQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsWUFBWTtBQUtkLE1BQU0sd0JBQTJDO0FBQUEsRUFDdEQ7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFB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
@@ -5,40 +5,32 @@ if you want to view the source, please visit the github repository of this plugi
5
5
 
6
6
  (function () {
7
7
  function ensureDisposeSymbols(symbolConstructor = Symbol) {
8
- symbolConstructor.asyncDispose ??= symbolConstructor.for('Symbol.asyncDispose');
9
- symbolConstructor.dispose ??= symbolConstructor.for('Symbol.dispose');
8
+ symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
9
+ symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
10
10
  }
11
11
 
12
12
  function ensureBrowserProcess() {
13
13
  const browserProcess = {
14
14
  browser: true,
15
15
  cwd() {
16
- return '/';
16
+ return "/";
17
17
  },
18
18
  env: {},
19
- platform: 'android'
19
+ platform: "android"
20
20
  };
21
-
22
- // eslint-disable-next-line obsidianmd/no-global-this, unicorn/no-unnecessary-global-this -- Must stay `globalThis`-qualified: in the emitted banner a bare `process` is a free identifier, so reading it where the host has none throws a ReferenceError instead of yielding `undefined`. That is the very case this function exists to handle.
23
21
  const existingProcess = globalThis.process;
24
-
25
22
  if (!existingProcess) {
26
- // eslint-disable-next-line obsidianmd/no-global-this -- Actively use globalThis.
27
23
  globalThis.process = browserProcess;
28
24
  return;
29
25
  }
30
-
31
26
  if (existingProcess.versions?.node) {
32
27
  return;
33
28
  }
34
-
35
29
  const existingProcessRecord = existingProcess;
36
-
37
30
  for (const [key, value] of Object.entries(browserProcess)) {
38
31
  existingProcessRecord[key] ??= value;
39
32
  }
40
-
41
- existingProcessRecord['browser'] = true;
33
+ existingProcessRecord["browser"] = true;
42
34
  }
43
35
 
44
36
  (function initEsm() {
@@ -113,4 +105,4 @@ var ObsidianPluginRepoPaths = /* @__PURE__ */ ((ObsidianPluginRepoPaths2) => {
113
105
  export {
114
106
  ObsidianPluginRepoPaths
115
107
  };
116
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuLXBsdWdpbi1yZXBvLXBhdGhzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBmaWxlIGRlZmluZXMgYW4gZW51bWVyYXRpb24gZm9yIGNvbW1vbiBmaWxlIGFuZCBmb2xkZXIgcGF0aHMgdXNlZCBpbiBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQuXG4gKi9cblxuLyoqXG4gKiBFbnVtZXJhdGlvbiBvZiBjb21tb25seSB1c2VkIGZpbGUgYW5kIGZvbGRlciBwYXRocyBpbiBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIHtcbiAgLyoqXG4gIEFueSBBbmRyb2lkIGNhcHR1cmUgaW50ZWdyYXRpb24tdGVzdCBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlBbmRyb2lkQ2FwdHVyZUludGVncmF0aW9uVGVzdFRzID0gJyouYW5kcm9pZC1jYXB0dXJlLmludGVncmF0aW9uLnRlc3QudHMnLFxuXG4gIC8qKlxuICBBbnkgQW5kcm9pZCBpbnRlZ3JhdGlvbi10ZXN0IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueUFuZHJvaWRJbnRlZ3JhdGlvblRlc3RUcyA9ICcqLmFuZHJvaWQuaW50ZWdyYXRpb24udGVzdC50cycsXG5cbiAgLyoqXG4gIENvbW1vbkpTIGZpbGUuXG4gICAqL1xuICBBbnlDanMgPSAnKi5janMnLFxuXG4gIC8qKlxuICBBbnkgZGVza3RvcC1vbmx5IFR5cGVTY3JpcHQgbW9kdWxlLCBpZGVudGlmaWVkIGJ5IHRoZSBgZGVza3RvcC1gIGZpbGVuYW1lIHByZWZpeC5cbiAgICovXG4gIEFueURlc2t0b3BUcyA9ICdkZXNrdG9wLSoudHMnLFxuXG4gIC8qKlxuICBBbnkgaW50ZWdyYXRpb24tdGVzdCBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlJbnRlZ3JhdGlvblRlc3RUcyA9ICcqLmludGVncmF0aW9uLnRlc3QudHMnLFxuXG4gIC8qKlxuICBKYXZhU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlKcyA9ICcqLmpzJyxcblxuICAvKipcbiAgRVNNIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueU1qcyA9ICcqLm1qcycsXG5cbiAgLyoqXG4gIEFueSBwYXRoIHJlY3Vyc2l2ZWx5LlxuICAgKi9cbiAgQW55UGF0aCA9ICcqKicsXG5cbiAgLyoqXG4gIEFueSB0ZXN0IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueVRlc3RUcyA9ICcqLnRlc3QudHMnLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlUcyA9ICcqLnRzJyxcblxuICAvKipcbiAgUmVhY3RKUyBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlUc3ggPSAnKi50c3gnLFxuXG4gIC8qKlxuICBPYnNpZGlhbiBhcHBsaWNhdGlvbiBzZXR0aW5ncyBmaWxlIHdpdGhpbiBhbiBPYnNpZGlhbiBjb25maWd1cmF0aW9uIGZvbGRlci5cbiAgICovXG4gIEFwcEpzb24gPSAnYXBwLmpzb24nLFxuXG4gIC8qKlxuICBDaGFuZ2Vsb2cgZmlsZS5cbiAgICovXG4gIENoYW5nZWxvZ01kID0gJ0NIQU5HRUxPRy5tZCcsXG5cbiAgLyoqXG4gIENsYXVkZSBDb2RlJ3Mgd29ya3RyZWUgZm9sZGVyLiBgZ2l0IHdvcmt0cmVlIGFkZGAgcHV0cyBhIHNlY29uZCwgY29tcGxldGUgY2hlY2tvdXQgb2YgdGhlIHJlcG9zaXRvcnlcbiAgaGVyZSwgSU5TSURFIHRoZSByZXBvc2l0b3J5LCB3aGljaCBpcyB0aGUgb25seSByZWFzb24gYSByZXBvIGV2ZXIgY29udGFpbnMgYSBjb3B5IG9mIGl0c2VsZi4gTmV2ZXJcbiAgc291cmNlLCBzbyBldmVyeSBsaW50ZXIgdGhhdCB3YWxrcyB0aGUgdHJlZSBoYXMgdG8gc2tpcCBpdC5cbiAgICovXG4gIENsYXVkZVdvcmt0cmVlcyA9ICcuY2xhdWRlL3dvcmt0cmVlcycsXG5cbiAgLyoqXG4gIENvbW1pdGxpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgQ29tbWl0bGludENvbmZpZ1RzID0gJ2NvbW1pdGxpbnQuY29uZmlnLnRzJyxcblxuICAvKipcbiAgQ3VycmVudCBmb2xkZXIuXG4gICAqL1xuICBDdXJyZW50Rm9sZGVyID0gJy4nLFxuXG4gIC8qKlxuICBEZW1vIHZhdWx0IGZvbGRlciBzaGlwcGVkIGluIGEgcGx1Z2luIHJlcG8gcm9vdC5cbiAgICovXG4gIERlbW9WYXVsdCA9ICdkZW1vLXZhdWx0JyxcblxuICAvKipcbiAgRGlzdHJpYnV0aW9uIGZvbGRlci5cbiAgICovXG4gIERpc3QgPSAnZGlzdCcsXG5cbiAgLyoqXG4gIEJ1aWxkIGZvbGRlciB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIuXG4gICAqL1xuICBEaXN0QnVpbGQgPSAnZGlzdC9idWlsZCcsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgYGRlbW8tdmF1bHQtaGVscGVyYCBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLCBpbmplY3RlZCBpbnRvIGRlbW8gdmF1bHRzIGF0IHJlbGVhc2UgdGltZS5cbiAgICovXG4gIERpc3REZW1vVmF1bHRIZWxwZXIgPSAnZGlzdC9kZW1vLXZhdWx0LWhlbHBlcicsXG5cbiAgLyoqXG4gIERldmVsb3BtZW50IGZvbGRlciB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIuXG4gICAqL1xuICBEaXN0RGV2ID0gJ2Rpc3QvZGV2JyxcblxuICAvKipcbiAgQSBwYXRoIHRvIHRoZSBidWlsdCBpbnRlZ3JhdGlvbi10ZXN0IGhhcm5lc3MgcGx1Z2luIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlciwgc2VlZGVkIGludG8gYSBjb25zdW1lcidzIGludGVncmF0aW9uLXRlc3QgdmF1bHQgc28gaXRzIGBldmFsSW5PYnNpZGlhbmAgY2xvc3VyZXMgcmVhY2ggdGhlIGxpYnJhcnkgdmlhIGBsaWJgLlxuICAgKi9cbiAgRGlzdEludGVncmF0aW9uVGVzdFBsdWdpbiA9ICdkaXN0L2ludGVncmF0aW9uLXRlc3QtcGx1Z2luJyxcblxuICAvKipcbiAgT2JzaWRpYW4gY29uZmlndXJhdGlvbiBmb2xkZXIgd2l0aGluIGEgdmF1bHQuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgb2JzaWRpYW5tZC9oYXJkY29kZWQtY29uZmlnLXBhdGggLS0gVGhpcyBpcyB0aGUgZGVmYXVsdCBjb25maWcgZm9sZGVyIG5hbWUgYmFrZWQgaW50byBhIHNoaXBwZWQgZGVtby12YXVsdCBza2VsZXRvbiwgbm90IGEgbG9va3VwIGFnYWluc3QgYSBsaXZlIHZhdWx0LlxuICBEb3RPYnNpZGlhbiA9ICcub2JzaWRpYW4nLFxuXG4gIC8qKlxuICBDb21tb25KUyBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnQ2pzID0gJ2VzbGludC5jb25maWcuY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnQ3RzID0gJ2VzbGludC5jb25maWcuY3RzJyxcblxuICAvKipcbiAgSmF2YVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnSnMgPSAnZXNsaW50LmNvbmZpZy5qcycsXG5cbiAgLyoqXG4gIEVTTSBKYXZhU2NyaXB0IEVTTGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBFc2xpbnRDb25maWdNanMgPSAnZXNsaW50LmNvbmZpZy5tanMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnTXRzID0gJ2VzbGludC5jb25maWcubXRzJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnVHMgPSAnZXNsaW50LmNvbmZpZy50cycsXG5cbiAgLyoqXG4gIEhvdCByZWxvYWQgZmlsZS5cbiAgICovXG4gIEhvdFJlbG9hZCA9ICcuaG90cmVsb2FkJyxcblxuICAvKipcbiAgTGljZW5zZSBmaWxlLlxuICAgKi9cbiAgTGljZW5zZSA9ICdMSUNFTlNFJyxcblxuICAvKipcbiAgTWFpbiBDU1MgZmlsZS5cbiAgICovXG4gIE1haW5Dc3MgPSAnbWFpbi5jc3MnLFxuXG4gIC8qKlxuICBNYWluIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIE1haW5KcyA9ICdtYWluLmpzJyxcblxuICAvKipcbiAgTWFpbiBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBNYWluVHMgPSAnbWFpbi50cycsXG5cbiAgLyoqXG4gIE1hbmlmZXN0IGZpbGUgZm9yIGJldGEgcmVsZWFzZXMuXG4gICAqL1xuICBNYW5pZmVzdEJldGFKc29uID0gJ21hbmlmZXN0LWJldGEuanNvbicsXG5cbiAgLyoqXG4gIE1hbmlmZXN0IGZpbGUuXG4gICAqL1xuICBNYW5pZmVzdEpzb24gPSAnbWFuaWZlc3QuanNvbicsXG5cbiAgLyoqXG4gIENvbW1vbkpTIE1hcmtkb3dubGludCBDTEkyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENsaTJDb25maWdDanMgPSAnLm1hcmtkb3dubGludC1jbGkyLmNqcycsXG5cbiAgLyoqXG4gIEpTT05DIE1hcmtkb3dubGludCBDTEkyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENsaTJDb25maWdKc29uYyA9ICcubWFya2Rvd25saW50LWNsaTIuanNvbmMnLFxuXG4gIC8qKlxuICBFU00gTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50Q2xpMkNvbmZpZ01qcyA9ICcubWFya2Rvd25saW50LWNsaTIubWpzJyxcblxuICAvKipcbiAgWUFNTCBNYXJrZG93bmxpbnQgQ0xJMiBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDbGkyQ29uZmlnWWFtbCA9ICcubWFya2Rvd25saW50LWNsaTIueWFtbCcsXG5cbiAgLyoqXG4gIENvbW1vbkpTIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdDanMgPSAnLm1hcmtkb3dubGludC5janMnLFxuXG4gIC8qKlxuICBKU09OIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdKc29uID0gJy5tYXJrZG93bmxpbnQuanNvbicsXG5cbiAgLyoqXG4gIEpTT05DIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdKc29uYyA9ICcubWFya2Rvd25saW50Lmpzb25jJyxcblxuICAvKipcbiAgRVNNIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdNanMgPSAnLm1hcmtkb3dubGludC5tanMnLFxuXG4gIC8qKlxuICBZQU1MIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdZYW1sID0gJy5tYXJrZG93bmxpbnQueWFtbCcsXG5cbiAgLyoqXG4gIFlBTUwgTWFya2Rvd25saW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENvbmZpZ1ltbCA9ICcubWFya2Rvd25saW50LnltbCcsXG5cbiAgLyoqXG4gIE1vY2tzIGZvbGRlci5cbiAgICovXG4gIE1vY2tzID0gJ3NyYy90ZXN0LWhlbHBlcnMnLFxuXG4gIC8qKlxuICBOb2RlIG1vZHVsZXMgZm9sZGVyLlxuICAgKi9cbiAgTm9kZU1vZHVsZXMgPSAnbm9kZV9tb2R1bGVzJyxcblxuICAvKipcbiAgTlBNIHNocmlua3dyYXAgZmlsZS5cbiAgICovXG4gIE5wbVNocmlua3dyYXBKc29uID0gJ25wbS1zaHJpbmt3cmFwLmpzb24nLFxuXG4gIC8qKlxuICBQYWNrYWdlIEpTT04gZmlsZS5cbiAgICovXG4gIFBhY2thZ2VKc29uID0gJ3BhY2thZ2UuanNvbicsXG5cbiAgLyoqXG4gIFBhY2thZ2UtbG9jayBKU09OIGZpbGUuXG4gICAqL1xuICBQYWNrYWdlTG9ja0pzb24gPSAncGFja2FnZS1sb2NrLmpzb24nLFxuXG4gIC8qKlxuICBQbHVnaW5zIGZvbGRlciB3aXRoaW4gYW4gT2JzaWRpYW4gY29uZmlndXJhdGlvbiBmb2xkZXIuXG4gICAqL1xuICBQbHVnaW5zID0gJ3BsdWdpbnMnLFxuXG4gIC8qKlxuICBTY3JpcHRzIGZvbGRlci5cbiAgICovXG4gIFNjcmlwdHMgPSAnc2NyaXB0cycsXG5cbiAgLyoqXG4gIFNjcmlwdCB1dGlsaXRpZXMgZm9sZGVyIChkZXYtb25seSB0b29saW5nIHRoYXQgcnVucyBpbiB0aGUgY29uc3VtZXIncyBOb2RlIGVudmlyb25tZW50LCBub3QgdGhlIE9ic2lkaWFuIHJ1bnRpbWUpLlxuICAgKi9cbiAgU2NyaXB0VXRpbHMgPSAnc3JjL3NjcmlwdC11dGlscycsXG5cbiAgLyoqXG4gIFNvdXJjZSBmb2xkZXIuXG4gICAqL1xuICBTcmMgPSAnc3JjJyxcblxuICAvKipcbiAgU3R5bGVzIENTUyBmaWxlLlxuICAgKi9cbiAgU3R5bGVzQ3NzID0gJ3N0eWxlcy5jc3MnLFxuXG4gIC8qKlxuICBUZXN0cyBmb2xkZXIuXG4gICAqL1xuICBUZXN0cyA9ICdfX3Rlc3RzX18nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIFRzQ29uZmlnSnNvbiA9ICd0c2NvbmZpZy5qc29uJyxcblxuICAvKipcbiAgVmVyc2lvbnMgSlNPTiBmaWxlLlxuICAgKi9cbiAgVmVyc2lvbnNKc29uID0gJ3ZlcnNpb25zLmpzb24nLFxuXG4gIC8qKlxuICBWaXRlc3QgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgVml0ZXN0Q29uZmlnVHMgPSAndml0ZXN0LmNvbmZpZy50cydcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTTyxJQUFLLDBCQUFMLGtCQUFLQSw2QkFBTDtBQUlMLEVBQUFBLHlCQUFBLHdDQUFxQztBQUtyQyxFQUFBQSx5QkFBQSxpQ0FBOEI7QUFLOUIsRUFBQUEseUJBQUEsWUFBUztBQUtULEVBQUFBLHlCQUFBLGtCQUFlO0FBS2YsRUFBQUEseUJBQUEsMEJBQXVCO0FBS3ZCLEVBQUFBLHlCQUFBLFdBQVE7QUFLUixFQUFBQSx5QkFBQSxZQUFTO0FBS1QsRUFBQUEseUJBQUEsYUFBVTtBQUtWLEVBQUFBLHlCQUFBLGVBQVk7QUFLWixFQUFBQSx5QkFBQSxXQUFRO0FBS1IsRUFBQUEseUJBQUEsWUFBUztBQUtULEVBQUFBLHlCQUFBLGFBQVU7QUFLVixFQUFBQSx5QkFBQSxpQkFBYztBQU9kLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSx3QkFBcUI7QUFLckIsRUFBQUEseUJBQUEsbUJBQWdCO0FBS2hCLEVBQUFBLHlCQUFBLGVBQVk7QUFLWixFQUFBQSx5QkFBQSxVQUFPO0FBS1AsRUFBQUEseUJBQUEsZUFBWTtBQUtaLEVBQUFBLHlCQUFBLHlCQUFzQjtBQUt0QixFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsK0JBQTRCO0FBTTVCLEVBQUFBLHlCQUFBLGlCQUFjO0FBS2QsRUFBQUEseUJBQUEscUJBQWtCO0FBS2xCLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSxvQkFBaUI7QUFLakIsRUFBQUEseUJBQUEscUJBQWtCO0FBS2xCLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSxvQkFBaUI7QUFLakIsRUFBQUEseUJBQUEsZUFBWTtBQUtaLEVBQUFBLHlCQUFBLGFBQVU7QUFLVixFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsWUFBUztBQUtULEVBQUFBLHlCQUFBLFlBQVM7QUFLVCxFQUFBQSx5QkFBQSxzQkFBbUI7QUFLbkIsRUFBQUEseUJBQUEsa0JBQWU7QUFLZixFQUFBQSx5QkFBQSwrQkFBNEI7QUFLNUIsRUFBQUEseUJBQUEsaUNBQThCO0FBSzlCLEVBQUFBLHlCQUFBLCtCQUE0QjtBQUs1QixFQUFBQSx5QkFBQSxnQ0FBNkI7QUFLN0IsRUFBQUEseUJBQUEsMkJBQXdCO0FBS3hCLEVBQUFBLHlCQUFBLDRCQUF5QjtBQUt6QixFQUFBQSx5QkFBQSw2QkFBMEI7QUFLMUIsRUFBQUEseUJBQUEsMkJBQXdCO0FBS3hCLEVBQUFBLHlCQUFBLDRCQUF5QjtBQUt6QixFQUFBQSx5QkFBQSwyQkFBd0I7QUFLeEIsRUFBQUEseUJBQUEsV0FBUTtBQUtSLEVBQUFBLHlCQUFBLGlCQUFjO0FBS2QsRUFBQUEseUJBQUEsdUJBQW9CO0FBS3BCLEVBQUFBLHlCQUFBLGlCQUFjO0FBS2QsRUFBQUEseUJBQUEscUJBQWtCO0FBS2xCLEVBQUFBLHlCQUFBLGFBQVU7QUFLVixFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsaUJBQWM7QUFLZCxFQUFBQSx5QkFBQSxTQUFNO0FBS04sRUFBQUEseUJBQUEsZUFBWTtBQUtaLEVBQUFBLHlCQUFBLFdBQVE7QUFLUixFQUFBQSx5QkFBQSxrQkFBZTtBQUtmLEVBQUFBLHlCQUFBLGtCQUFlO0FBS2YsRUFBQUEseUJBQUEsb0JBQWlCO0FBOVNQLFNBQUFBO0FBQUEsR0FBQTsiLAogICJuYW1lcyI6IFsiT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMiXQp9Cg==
108
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL29ic2lkaWFuLXBsdWdpbi1yZXBvLXBhdGhzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVGhpcyBmaWxlIGRlZmluZXMgYW4gZW51bWVyYXRpb24gZm9yIGNvbW1vbiBmaWxlIGFuZCBmb2xkZXIgcGF0aHMgdXNlZCBpbiBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQuXG4gKi9cblxuLyoqXG4gKiBFbnVtZXJhdGlvbiBvZiBjb21tb25seSB1c2VkIGZpbGUgYW5kIGZvbGRlciBwYXRocyBpbiBPYnNpZGlhbiBwbHVnaW4gZGV2ZWxvcG1lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIHtcbiAgLyoqXG4gIEFueSBBbmRyb2lkIGNhcHR1cmUgaW50ZWdyYXRpb24tdGVzdCBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlBbmRyb2lkQ2FwdHVyZUludGVncmF0aW9uVGVzdFRzID0gJyouYW5kcm9pZC1jYXB0dXJlLmludGVncmF0aW9uLnRlc3QudHMnLFxuXG4gIC8qKlxuICBBbnkgQW5kcm9pZCBpbnRlZ3JhdGlvbi10ZXN0IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueUFuZHJvaWRJbnRlZ3JhdGlvblRlc3RUcyA9ICcqLmFuZHJvaWQuaW50ZWdyYXRpb24udGVzdC50cycsXG5cbiAgLyoqXG4gIENvbW1vbkpTIGZpbGUuXG4gICAqL1xuICBBbnlDanMgPSAnKi5janMnLFxuXG4gIC8qKlxuICBBbnkgZGVza3RvcC1vbmx5IFR5cGVTY3JpcHQgbW9kdWxlLCBpZGVudGlmaWVkIGJ5IHRoZSBgZGVza3RvcC1gIGZpbGVuYW1lIHByZWZpeC5cbiAgICovXG4gIEFueURlc2t0b3BUcyA9ICdkZXNrdG9wLSoudHMnLFxuXG4gIC8qKlxuICBBbnkgaW50ZWdyYXRpb24tdGVzdCBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlJbnRlZ3JhdGlvblRlc3RUcyA9ICcqLmludGVncmF0aW9uLnRlc3QudHMnLFxuXG4gIC8qKlxuICBKYXZhU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlKcyA9ICcqLmpzJyxcblxuICAvKipcbiAgRVNNIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueU1qcyA9ICcqLm1qcycsXG5cbiAgLyoqXG4gIEFueSBwYXRoIHJlY3Vyc2l2ZWx5LlxuICAgKi9cbiAgQW55UGF0aCA9ICcqKicsXG5cbiAgLyoqXG4gIEFueSB0ZXN0IFR5cGVTY3JpcHQgZmlsZS5cbiAgICovXG4gIEFueVRlc3RUcyA9ICcqLnRlc3QudHMnLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlUcyA9ICcqLnRzJyxcblxuICAvKipcbiAgUmVhY3RKUyBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBBbnlUc3ggPSAnKi50c3gnLFxuXG4gIC8qKlxuICBPYnNpZGlhbiBhcHBsaWNhdGlvbiBzZXR0aW5ncyBmaWxlIHdpdGhpbiBhbiBPYnNpZGlhbiBjb25maWd1cmF0aW9uIGZvbGRlci5cbiAgICovXG4gIEFwcEpzb24gPSAnYXBwLmpzb24nLFxuXG4gIC8qKlxuICBDaGFuZ2Vsb2cgZmlsZS5cbiAgICovXG4gIENoYW5nZWxvZ01kID0gJ0NIQU5HRUxPRy5tZCcsXG5cbiAgLyoqXG4gIENsYXVkZSBDb2RlJ3Mgd29ya3RyZWUgZm9sZGVyLiBgZ2l0IHdvcmt0cmVlIGFkZGAgcHV0cyBhIHNlY29uZCwgY29tcGxldGUgY2hlY2tvdXQgb2YgdGhlIHJlcG9zaXRvcnlcbiAgaGVyZSwgSU5TSURFIHRoZSByZXBvc2l0b3J5LCB3aGljaCBpcyB0aGUgb25seSByZWFzb24gYSByZXBvIGV2ZXIgY29udGFpbnMgYSBjb3B5IG9mIGl0c2VsZi4gTmV2ZXJcbiAgc291cmNlLCBzbyBldmVyeSBsaW50ZXIgdGhhdCB3YWxrcyB0aGUgdHJlZSBoYXMgdG8gc2tpcCBpdC5cbiAgICovXG4gIENsYXVkZVdvcmt0cmVlcyA9ICcuY2xhdWRlL3dvcmt0cmVlcycsXG5cbiAgLyoqXG4gIENvbW1pdGxpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgQ29tbWl0bGludENvbmZpZ1RzID0gJ2NvbW1pdGxpbnQuY29uZmlnLnRzJyxcblxuICAvKipcbiAgQ3VycmVudCBmb2xkZXIuXG4gICAqL1xuICBDdXJyZW50Rm9sZGVyID0gJy4nLFxuXG4gIC8qKlxuICBEZW1vIHZhdWx0IGZvbGRlciBzaGlwcGVkIGluIGEgcGx1Z2luIHJlcG8gcm9vdC5cbiAgICovXG4gIERlbW9WYXVsdCA9ICdkZW1vLXZhdWx0JyxcblxuICAvKipcbiAgRGlzdHJpYnV0aW9uIGZvbGRlci5cbiAgICovXG4gIERpc3QgPSAnZGlzdCcsXG5cbiAgLyoqXG4gIEJ1aWxkIGZvbGRlciB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIuXG4gICAqL1xuICBEaXN0QnVpbGQgPSAnZGlzdC9idWlsZCcsXG5cbiAgLyoqXG4gIEEgcGF0aCB0byB0aGUgYnVpbHQgYGRlbW8tdmF1bHQtaGVscGVyYCBwbHVnaW4gd2l0aGluIHRoZSB7QGxpbmsgRGlzdH0gZm9sZGVyLCBpbmplY3RlZCBpbnRvIGRlbW8gdmF1bHRzIGF0IHJlbGVhc2UgdGltZS5cbiAgICovXG4gIERpc3REZW1vVmF1bHRIZWxwZXIgPSAnZGlzdC9kZW1vLXZhdWx0LWhlbHBlcicsXG5cbiAgLyoqXG4gIERldmVsb3BtZW50IGZvbGRlciB3aXRoaW4gdGhlIHtAbGluayBEaXN0fSBmb2xkZXIuXG4gICAqL1xuICBEaXN0RGV2ID0gJ2Rpc3QvZGV2JyxcblxuICAvKipcbiAgQSBwYXRoIHRvIHRoZSBidWlsdCBpbnRlZ3JhdGlvbi10ZXN0IGhhcm5lc3MgcGx1Z2luIHdpdGhpbiB0aGUge0BsaW5rIERpc3R9IGZvbGRlciwgc2VlZGVkIGludG8gYSBjb25zdW1lcidzIGludGVncmF0aW9uLXRlc3QgdmF1bHQgc28gaXRzIGBldmFsSW5PYnNpZGlhbmAgY2xvc3VyZXMgcmVhY2ggdGhlIGxpYnJhcnkgdmlhIGBsaWJgLlxuICAgKi9cbiAgRGlzdEludGVncmF0aW9uVGVzdFBsdWdpbiA9ICdkaXN0L2ludGVncmF0aW9uLXRlc3QtcGx1Z2luJyxcblxuICAvKipcbiAgT2JzaWRpYW4gY29uZmlndXJhdGlvbiBmb2xkZXIgd2l0aGluIGEgdmF1bHQuXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgb2JzaWRpYW5tZC9oYXJkY29kZWQtY29uZmlnLXBhdGggLS0gVGhpcyBpcyB0aGUgZGVmYXVsdCBjb25maWcgZm9sZGVyIG5hbWUgYmFrZWQgaW50byBhIHNoaXBwZWQgZGVtby12YXVsdCBza2VsZXRvbiwgbm90IGEgbG9va3VwIGFnYWluc3QgYSBsaXZlIHZhdWx0LlxuICBEb3RPYnNpZGlhbiA9ICcub2JzaWRpYW4nLFxuXG4gIC8qKlxuICBDb21tb25KUyBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnQ2pzID0gJ2VzbGludC5jb25maWcuY2pzJyxcblxuICAvKipcbiAgQ29tbW9uSlMgVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnQ3RzID0gJ2VzbGludC5jb25maWcuY3RzJyxcblxuICAvKipcbiAgSmF2YVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnSnMgPSAnZXNsaW50LmNvbmZpZy5qcycsXG5cbiAgLyoqXG4gIEVTTSBKYXZhU2NyaXB0IEVTTGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBFc2xpbnRDb25maWdNanMgPSAnZXNsaW50LmNvbmZpZy5tanMnLFxuXG4gIC8qKlxuICBFU00gVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnTXRzID0gJ2VzbGludC5jb25maWcubXRzJyxcblxuICAvKipcbiAgVHlwZVNjcmlwdCBFU0xpbnQgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgRXNsaW50Q29uZmlnVHMgPSAnZXNsaW50LmNvbmZpZy50cycsXG5cbiAgLyoqXG4gIEhvdCByZWxvYWQgZmlsZS5cbiAgICovXG4gIEhvdFJlbG9hZCA9ICcuaG90cmVsb2FkJyxcblxuICAvKipcbiAgTGljZW5zZSBmaWxlLlxuICAgKi9cbiAgTGljZW5zZSA9ICdMSUNFTlNFJyxcblxuICAvKipcbiAgTWFpbiBDU1MgZmlsZS5cbiAgICovXG4gIE1haW5Dc3MgPSAnbWFpbi5jc3MnLFxuXG4gIC8qKlxuICBNYWluIEphdmFTY3JpcHQgZmlsZS5cbiAgICovXG4gIE1haW5KcyA9ICdtYWluLmpzJyxcblxuICAvKipcbiAgTWFpbiBUeXBlU2NyaXB0IGZpbGUuXG4gICAqL1xuICBNYWluVHMgPSAnbWFpbi50cycsXG5cbiAgLyoqXG4gIE1hbmlmZXN0IGZpbGUgZm9yIGJldGEgcmVsZWFzZXMuXG4gICAqL1xuICBNYW5pZmVzdEJldGFKc29uID0gJ21hbmlmZXN0LWJldGEuanNvbicsXG5cbiAgLyoqXG4gIE1hbmlmZXN0IGZpbGUuXG4gICAqL1xuICBNYW5pZmVzdEpzb24gPSAnbWFuaWZlc3QuanNvbicsXG5cbiAgLyoqXG4gIENvbW1vbkpTIE1hcmtkb3dubGludCBDTEkyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENsaTJDb25maWdDanMgPSAnLm1hcmtkb3dubGludC1jbGkyLmNqcycsXG5cbiAgLyoqXG4gIEpTT05DIE1hcmtkb3dubGludCBDTEkyIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENsaTJDb25maWdKc29uYyA9ICcubWFya2Rvd25saW50LWNsaTIuanNvbmMnLFxuXG4gIC8qKlxuICBFU00gTWFya2Rvd25saW50IENMSTIgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgTWFya2Rvd25saW50Q2xpMkNvbmZpZ01qcyA9ICcubWFya2Rvd25saW50LWNsaTIubWpzJyxcblxuICAvKipcbiAgWUFNTCBNYXJrZG93bmxpbnQgQ0xJMiBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDbGkyQ29uZmlnWWFtbCA9ICcubWFya2Rvd25saW50LWNsaTIueWFtbCcsXG5cbiAgLyoqXG4gIENvbW1vbkpTIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdDanMgPSAnLm1hcmtkb3dubGludC5janMnLFxuXG4gIC8qKlxuICBKU09OIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdKc29uID0gJy5tYXJrZG93bmxpbnQuanNvbicsXG5cbiAgLyoqXG4gIEpTT05DIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdKc29uYyA9ICcubWFya2Rvd25saW50Lmpzb25jJyxcblxuICAvKipcbiAgRVNNIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdNanMgPSAnLm1hcmtkb3dubGludC5tanMnLFxuXG4gIC8qKlxuICBZQU1MIE1hcmtkb3dubGludCBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBNYXJrZG93bmxpbnRDb25maWdZYW1sID0gJy5tYXJrZG93bmxpbnQueWFtbCcsXG5cbiAgLyoqXG4gIFlBTUwgTWFya2Rvd25saW50IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIE1hcmtkb3dubGludENvbmZpZ1ltbCA9ICcubWFya2Rvd25saW50LnltbCcsXG5cbiAgLyoqXG4gIE1vY2tzIGZvbGRlci5cbiAgICovXG4gIE1vY2tzID0gJ3NyYy90ZXN0LWhlbHBlcnMnLFxuXG4gIC8qKlxuICBOb2RlIG1vZHVsZXMgZm9sZGVyLlxuICAgKi9cbiAgTm9kZU1vZHVsZXMgPSAnbm9kZV9tb2R1bGVzJyxcblxuICAvKipcbiAgTlBNIHNocmlua3dyYXAgZmlsZS5cbiAgICovXG4gIE5wbVNocmlua3dyYXBKc29uID0gJ25wbS1zaHJpbmt3cmFwLmpzb24nLFxuXG4gIC8qKlxuICBQYWNrYWdlIEpTT04gZmlsZS5cbiAgICovXG4gIFBhY2thZ2VKc29uID0gJ3BhY2thZ2UuanNvbicsXG5cbiAgLyoqXG4gIFBhY2thZ2UtbG9jayBKU09OIGZpbGUuXG4gICAqL1xuICBQYWNrYWdlTG9ja0pzb24gPSAncGFja2FnZS1sb2NrLmpzb24nLFxuXG4gIC8qKlxuICBQbHVnaW5zIGZvbGRlciB3aXRoaW4gYW4gT2JzaWRpYW4gY29uZmlndXJhdGlvbiBmb2xkZXIuXG4gICAqL1xuICBQbHVnaW5zID0gJ3BsdWdpbnMnLFxuXG4gIC8qKlxuICBTY3JpcHRzIGZvbGRlci5cbiAgICovXG4gIFNjcmlwdHMgPSAnc2NyaXB0cycsXG5cbiAgLyoqXG4gIFNjcmlwdCB1dGlsaXRpZXMgZm9sZGVyIChkZXYtb25seSB0b29saW5nIHRoYXQgcnVucyBpbiB0aGUgY29uc3VtZXIncyBOb2RlIGVudmlyb25tZW50LCBub3QgdGhlIE9ic2lkaWFuIHJ1bnRpbWUpLlxuICAgKi9cbiAgU2NyaXB0VXRpbHMgPSAnc3JjL3NjcmlwdC11dGlscycsXG5cbiAgLyoqXG4gIFNvdXJjZSBmb2xkZXIuXG4gICAqL1xuICBTcmMgPSAnc3JjJyxcblxuICAvKipcbiAgU3R5bGVzIENTUyBmaWxlLlxuICAgKi9cbiAgU3R5bGVzQ3NzID0gJ3N0eWxlcy5jc3MnLFxuXG4gIC8qKlxuICBUZXN0cyBmb2xkZXIuXG4gICAqL1xuICBUZXN0cyA9ICdfX3Rlc3RzX18nLFxuXG4gIC8qKlxuICBUeXBlU2NyaXB0IGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIFRzQ29uZmlnSnNvbiA9ICd0c2NvbmZpZy5qc29uJyxcblxuICAvKipcbiAgVmVyc2lvbnMgSlNPTiBmaWxlLlxuICAgKi9cbiAgVmVyc2lvbnNKc29uID0gJ3ZlcnNpb25zLmpzb24nLFxuXG4gIC8qKlxuICBWaXRlc3QgY29uZmlndXJhdGlvbiBmaWxlLlxuICAgKi9cbiAgVml0ZXN0Q29uZmlnVHMgPSAndml0ZXN0LmNvbmZpZy50cydcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU08sSUFBSywwQkFBTCxrQkFBS0EsNkJBQUw7QUFJTCxFQUFBQSx5QkFBQSx3Q0FBcUM7QUFLckMsRUFBQUEseUJBQUEsaUNBQThCO0FBSzlCLEVBQUFBLHlCQUFBLFlBQVM7QUFLVCxFQUFBQSx5QkFBQSxrQkFBZTtBQUtmLEVBQUFBLHlCQUFBLDBCQUF1QjtBQUt2QixFQUFBQSx5QkFBQSxXQUFRO0FBS1IsRUFBQUEseUJBQUEsWUFBUztBQUtULEVBQUFBLHlCQUFBLGFBQVU7QUFLVixFQUFBQSx5QkFBQSxlQUFZO0FBS1osRUFBQUEseUJBQUEsV0FBUTtBQUtSLEVBQUFBLHlCQUFBLFlBQVM7QUFLVCxFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsaUJBQWM7QUFPZCxFQUFBQSx5QkFBQSxxQkFBa0I7QUFLbEIsRUFBQUEseUJBQUEsd0JBQXFCO0FBS3JCLEVBQUFBLHlCQUFBLG1CQUFnQjtBQUtoQixFQUFBQSx5QkFBQSxlQUFZO0FBS1osRUFBQUEseUJBQUEsVUFBTztBQUtQLEVBQUFBLHlCQUFBLGVBQVk7QUFLWixFQUFBQSx5QkFBQSx5QkFBc0I7QUFLdEIsRUFBQUEseUJBQUEsYUFBVTtBQUtWLEVBQUFBLHlCQUFBLCtCQUE0QjtBQU01QixFQUFBQSx5QkFBQSxpQkFBYztBQUtkLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSxxQkFBa0I7QUFLbEIsRUFBQUEseUJBQUEsb0JBQWlCO0FBS2pCLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSxxQkFBa0I7QUFLbEIsRUFBQUEseUJBQUEsb0JBQWlCO0FBS2pCLEVBQUFBLHlCQUFBLGVBQVk7QUFLWixFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsYUFBVTtBQUtWLEVBQUFBLHlCQUFBLFlBQVM7QUFLVCxFQUFBQSx5QkFBQSxZQUFTO0FBS1QsRUFBQUEseUJBQUEsc0JBQW1CO0FBS25CLEVBQUFBLHlCQUFBLGtCQUFlO0FBS2YsRUFBQUEseUJBQUEsK0JBQTRCO0FBSzVCLEVBQUFBLHlCQUFBLGlDQUE4QjtBQUs5QixFQUFBQSx5QkFBQSwrQkFBNEI7QUFLNUIsRUFBQUEseUJBQUEsZ0NBQTZCO0FBSzdCLEVBQUFBLHlCQUFBLDJCQUF3QjtBQUt4QixFQUFBQSx5QkFBQSw0QkFBeUI7QUFLekIsRUFBQUEseUJBQUEsNkJBQTBCO0FBSzFCLEVBQUFBLHlCQUFBLDJCQUF3QjtBQUt4QixFQUFBQSx5QkFBQSw0QkFBeUI7QUFLekIsRUFBQUEseUJBQUEsMkJBQXdCO0FBS3hCLEVBQUFBLHlCQUFBLFdBQVE7QUFLUixFQUFBQSx5QkFBQSxpQkFBYztBQUtkLEVBQUFBLHlCQUFBLHVCQUFvQjtBQUtwQixFQUFBQSx5QkFBQSxpQkFBYztBQUtkLEVBQUFBLHlCQUFBLHFCQUFrQjtBQUtsQixFQUFBQSx5QkFBQSxhQUFVO0FBS1YsRUFBQUEseUJBQUEsYUFBVTtBQUtWLEVBQUFBLHlCQUFBLGlCQUFjO0FBS2QsRUFBQUEseUJBQUEsU0FBTTtBQUtOLEVBQUFBLHlCQUFBLGVBQVk7QUFLWixFQUFBQSx5QkFBQSxXQUFRO0FBS1IsRUFBQUEseUJBQUEsa0JBQWU7QUFLZixFQUFBQSx5QkFBQSxrQkFBZTtBQUtmLEVBQUFBLHlCQUFBLG9CQUFpQjtBQTlTUCxTQUFBQTtBQUFBLEdBQUE7IiwKICAibmFtZXMiOiBbIk9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIl0KfQo=