@mnaoumov/obsidian-lib 10.5.1 → 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.
- package/codemirror/inline-token-widgets/package.json +6 -0
- package/codemirror/settings-facet/package.json +6 -0
- package/command-handlers/open-discussion-command-handler/package.json +6 -0
- package/command-handlers/open-feature-request-command-handler/package.json +6 -0
- package/command-handlers/open-git-hub-command-handler/package.json +6 -0
- package/components/settings-facet-component/package.json +6 -0
- package/components/style-sheet-component/package.json +6 -0
- package/dist/lib/cjs/__merged.cjs +137 -1
- package/dist/lib/cjs/__merged.d.cts +26 -0
- package/dist/lib/cjs/anchored-suggest.cjs +232 -0
- package/dist/lib/cjs/anchored-suggest.d.cts +116 -0
- package/dist/lib/cjs/broken-link-candidates.cjs +366 -0
- package/dist/lib/cjs/broken-link-candidates.d.cts +181 -0
- package/dist/lib/cjs/bug-report.cjs +4 -2
- package/dist/lib/cjs/bug-report.d.cts +1 -1
- package/dist/lib/cjs/code-block-render-handoff.cjs +272 -0
- package/dist/lib/cjs/code-block-render-handoff.d.cts +131 -0
- package/dist/lib/cjs/codemirror/index.cjs +7 -1
- package/dist/lib/cjs/codemirror/index.d.cts +2 -0
- package/dist/lib/cjs/codemirror/inline-token-widgets.cjs +250 -0
- package/dist/lib/cjs/codemirror/inline-token-widgets.d.cts +109 -0
- package/dist/lib/cjs/codemirror/settings-facet.cjs +132 -0
- package/dist/lib/cjs/codemirror/settings-facet.d.cts +19 -0
- package/dist/lib/cjs/command-handlers/index.cjs +10 -1
- package/dist/lib/cjs/command-handlers/index.d.cts +3 -0
- package/dist/lib/cjs/command-handlers/open-bug-report-command-handler.cjs +9 -12
- package/dist/lib/cjs/command-handlers/open-bug-report-command-handler.d.cts +6 -8
- package/dist/lib/cjs/command-handlers/open-discussion-command-handler.cjs +127 -0
- package/dist/lib/cjs/command-handlers/open-discussion-command-handler.d.cts +45 -0
- package/dist/lib/cjs/command-handlers/open-feature-request-command-handler.cjs +119 -0
- package/dist/lib/cjs/command-handlers/open-feature-request-command-handler.d.cts +33 -0
- package/dist/lib/cjs/command-handlers/open-git-hub-command-handler.cjs +121 -0
- package/dist/lib/cjs/command-handlers/open-git-hub-command-handler.d.cts +43 -0
- package/dist/lib/cjs/components/index.cjs +7 -1
- package/dist/lib/cjs/components/index.d.cts +2 -0
- package/dist/lib/cjs/components/settings-facet-component.cjs +136 -0
- package/dist/lib/cjs/components/settings-facet-component.d.cts +68 -0
- package/dist/lib/cjs/components/style-sheet-component.cjs +198 -0
- package/dist/lib/cjs/components/style-sheet-component.d.cts +79 -0
- package/dist/lib/cjs/css-class.cjs +8 -1
- package/dist/lib/cjs/css-class.d.cts +28 -0
- package/dist/lib/cjs/data-stores/data-store-transport.cjs +7 -4
- package/dist/lib/cjs/data-stores/data-store-transport.d.cts +1 -1
- package/dist/lib/cjs/data-stores/shared-data-store.cjs +1 -1
- package/dist/lib/cjs/data-stores/shared-data-store.d.cts +1 -1
- package/dist/lib/cjs/desktop-git-runner.cjs +117 -0
- package/dist/lib/cjs/desktop-git-runner.d.cts +17 -0
- package/dist/lib/cjs/desktop-request-url-stream.cjs +258 -0
- package/dist/lib/cjs/desktop-request-url-stream.d.cts +22 -0
- package/dist/lib/cjs/editor-suggest-registrar.cjs +8 -2
- package/dist/lib/cjs/editor-suggest-registrar.d.cts +14 -2
- package/dist/lib/cjs/editor-suggest.cjs +197 -0
- package/dist/lib/cjs/editor-suggest.d.cts +103 -0
- package/dist/lib/cjs/feature-request.cjs +115 -0
- package/dist/lib/cjs/feature-request.d.cts +54 -0
- package/dist/lib/cjs/generated-during-build.cjs +2 -2
- package/dist/lib/cjs/git-hub-discussion.cjs +101 -0
- package/dist/lib/cjs/git-hub-discussion.d.cts +28 -0
- package/dist/lib/cjs/git-rename-history.cjs +148 -0
- package/dist/lib/cjs/git-rename-history.d.cts +43 -0
- package/dist/lib/cjs/hotkey.cjs +185 -0
- package/dist/lib/cjs/hotkey.d.cts +59 -0
- package/dist/lib/cjs/i18n/locales/en.cjs +13 -1
- package/dist/lib/cjs/i18n/locales/en.d.cts +12 -0
- package/dist/lib/cjs/i18n/locales/translations-map.d.cts +12 -0
- package/dist/lib/cjs/index.cjs +46 -1
- package/dist/lib/cjs/index.d.cts +15 -0
- package/dist/lib/cjs/inline-token-renderer.cjs +145 -0
- package/dist/lib/cjs/inline-token-renderer.d.cts +88 -0
- package/dist/lib/cjs/link-and-tag-input-suggest.cjs +325 -0
- package/dist/lib/cjs/link-and-tag-input-suggest.d.cts +229 -0
- package/dist/lib/cjs/markdown-code-block-processor.cjs +13 -1
- package/dist/lib/cjs/markdown-code-block-processor.d.cts +18 -0
- package/dist/lib/cjs/markdown.cjs +6 -1
- package/dist/lib/cjs/markdown.d.cts +10 -1
- package/dist/lib/cjs/rendered-markdown.cjs +306 -0
- package/dist/lib/cjs/rendered-markdown.d.cts +77 -0
- package/dist/lib/cjs/request-url.cjs +523 -0
- package/dist/lib/cjs/request-url.d.cts +233 -0
- package/dist/lib/cjs/setting-components/folder-list-component.cjs +216 -0
- package/dist/lib/cjs/setting-components/folder-list-component.d.cts +73 -0
- package/dist/lib/cjs/setting-components/hotkey-component.cjs +260 -0
- package/dist/lib/cjs/setting-components/hotkey-component.d.cts +85 -0
- package/dist/lib/cjs/setting-components/index.cjs +13 -1
- package/dist/lib/cjs/setting-components/index.d.cts +4 -0
- package/dist/lib/cjs/setting-components/list-component.cjs +291 -0
- package/dist/lib/cjs/setting-components/list-component.d.cts +106 -0
- package/dist/lib/cjs/setting-components/tag-list-component.cjs +220 -0
- package/dist/lib/cjs/setting-components/tag-list-component.d.cts +82 -0
- package/dist/lib/cjs/setting-ex.cjs +51 -1
- package/dist/lib/cjs/setting-ex.d.cts +35 -1
- package/dist/lib/cjs/settings-tabs.cjs +258 -0
- package/dist/lib/cjs/settings-tabs.d.cts +101 -0
- package/dist/lib/cjs/vault.cjs +2 -2
- package/dist/lib/cjs/vault.d.cts +3 -1
- package/dist/lib/esm/__merged.d.mts +26 -0
- package/dist/lib/esm/__merged.mjs +139 -1
- package/dist/lib/esm/anchored-suggest.d.mts +116 -0
- package/dist/lib/esm/anchored-suggest.mjs +144 -0
- package/dist/lib/esm/broken-link-candidates.d.mts +181 -0
- package/dist/lib/esm/broken-link-candidates.mjs +275 -0
- package/dist/lib/esm/bug-report.d.mts +1 -1
- package/dist/lib/esm/bug-report.mjs +4 -2
- package/dist/lib/esm/code-block-render-handoff.d.mts +131 -0
- package/dist/lib/esm/code-block-render-handoff.mjs +183 -0
- package/dist/lib/esm/codemirror/index.d.mts +2 -0
- package/dist/lib/esm/codemirror/index.mjs +5 -1
- package/dist/lib/esm/codemirror/inline-token-widgets.d.mts +109 -0
- package/dist/lib/esm/codemirror/inline-token-widgets.mjs +167 -0
- package/dist/lib/esm/codemirror/settings-facet.d.mts +19 -0
- package/dist/lib/esm/codemirror/settings-facet.mjs +44 -0
- package/dist/lib/esm/command-handlers/index.d.mts +3 -0
- package/dist/lib/esm/command-handlers/index.mjs +7 -1
- package/dist/lib/esm/command-handlers/open-bug-report-command-handler.d.mts +6 -8
- package/dist/lib/esm/command-handlers/open-bug-report-command-handler.mjs +9 -12
- package/dist/lib/esm/command-handlers/open-discussion-command-handler.d.mts +45 -0
- package/dist/lib/esm/command-handlers/open-discussion-command-handler.mjs +39 -0
- package/dist/lib/esm/command-handlers/open-feature-request-command-handler.d.mts +33 -0
- package/dist/lib/esm/command-handlers/open-feature-request-command-handler.mjs +31 -0
- package/dist/lib/esm/command-handlers/open-git-hub-command-handler.d.mts +43 -0
- package/dist/lib/esm/command-handlers/open-git-hub-command-handler.mjs +33 -0
- package/dist/lib/esm/components/index.d.mts +2 -0
- package/dist/lib/esm/components/index.mjs +5 -1
- package/dist/lib/esm/components/settings-facet-component.d.mts +68 -0
- package/dist/lib/esm/components/settings-facet-component.mjs +48 -0
- package/dist/lib/esm/components/style-sheet-component.d.mts +79 -0
- package/dist/lib/esm/components/style-sheet-component.mjs +109 -0
- package/dist/lib/esm/css-class.d.mts +28 -0
- package/dist/lib/esm/css-class.mjs +8 -1
- package/dist/lib/esm/data-stores/data-store-transport.d.mts +1 -1
- package/dist/lib/esm/data-stores/data-store-transport.mjs +7 -4
- package/dist/lib/esm/data-stores/shared-data-store.d.mts +1 -1
- package/dist/lib/esm/data-stores/shared-data-store.mjs +1 -1
- package/dist/lib/esm/desktop-git-runner.d.mts +17 -0
- package/dist/lib/esm/desktop-git-runner.mjs +19 -0
- package/dist/lib/esm/desktop-request-url-stream.d.mts +22 -0
- package/dist/lib/esm/desktop-request-url-stream.mjs +170 -0
- package/dist/lib/esm/editor-suggest-registrar.d.mts +14 -2
- package/dist/lib/esm/editor-suggest-registrar.mjs +8 -2
- package/dist/lib/esm/editor-suggest.d.mts +103 -0
- package/dist/lib/esm/editor-suggest.mjs +108 -0
- package/dist/lib/esm/feature-request.d.mts +54 -0
- package/dist/lib/esm/feature-request.mjs +25 -0
- package/dist/lib/esm/generated-during-build.mjs +2 -2
- package/dist/lib/esm/git-hub-discussion.d.mts +28 -0
- package/dist/lib/esm/git-hub-discussion.mjs +13 -0
- package/dist/lib/esm/git-rename-history.d.mts +43 -0
- package/dist/lib/esm/git-rename-history.mjs +59 -0
- package/dist/lib/esm/hotkey.d.mts +59 -0
- package/dist/lib/esm/hotkey.mjs +95 -0
- package/dist/lib/esm/i18n/locales/en.d.mts +12 -0
- package/dist/lib/esm/i18n/locales/en.mjs +13 -1
- package/dist/lib/esm/i18n/locales/translations-map.d.mts +12 -0
- package/dist/lib/esm/index.d.mts +15 -0
- package/dist/lib/esm/index.mjs +31 -1
- package/dist/lib/esm/inline-token-renderer.d.mts +88 -0
- package/dist/lib/esm/inline-token-renderer.mjs +59 -0
- package/dist/lib/esm/link-and-tag-input-suggest.d.mts +229 -0
- package/dist/lib/esm/link-and-tag-input-suggest.mjs +239 -0
- package/dist/lib/esm/markdown-code-block-processor.d.mts +18 -0
- package/dist/lib/esm/markdown-code-block-processor.mjs +16 -1
- package/dist/lib/esm/markdown.d.mts +10 -1
- package/dist/lib/esm/markdown.mjs +9 -1
- package/dist/lib/esm/rendered-markdown.d.mts +77 -0
- package/dist/lib/esm/rendered-markdown.mjs +219 -0
- package/dist/lib/esm/request-url.d.mts +233 -0
- package/dist/lib/esm/request-url.mjs +428 -0
- package/dist/lib/esm/setting-components/folder-list-component.d.mts +73 -0
- package/dist/lib/esm/setting-components/folder-list-component.mjs +131 -0
- package/dist/lib/esm/setting-components/hotkey-component.d.mts +85 -0
- package/dist/lib/esm/setting-components/hotkey-component.mjs +178 -0
- package/dist/lib/esm/setting-components/index.d.mts +4 -0
- package/dist/lib/esm/setting-components/index.mjs +9 -1
- package/dist/lib/esm/setting-components/list-component.d.mts +106 -0
- package/dist/lib/esm/setting-components/list-component.mjs +206 -0
- package/dist/lib/esm/setting-components/tag-list-component.d.mts +82 -0
- package/dist/lib/esm/setting-components/tag-list-component.mjs +131 -0
- package/dist/lib/esm/setting-ex.d.mts +35 -1
- package/dist/lib/esm/setting-ex.mjs +51 -1
- package/dist/lib/esm/settings-tabs.d.mts +101 -0
- package/dist/lib/esm/settings-tabs.mjs +170 -0
- package/dist/lib/esm/vault.d.mts +3 -1
- package/dist/lib/esm/vault.mjs +2 -2
- package/dist/styles.css +83 -1
- package/package.json +2 -2
- package/setting-components/folder-list-component/package.json +6 -0
- package/setting-components/hotkey-component/package.json +6 -0
- package/setting-components/list-component/package.json +6 -0
- package/setting-components/tag-list-component/package.json +6 -0
|
@@ -0,0 +1,250 @@
|
|
|
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 () {
|
|
6
|
+
function ensureBrowserProcess() {
|
|
7
|
+
const browserProcess = {
|
|
8
|
+
browser: true,
|
|
9
|
+
cwd() {
|
|
10
|
+
return "/";
|
|
11
|
+
},
|
|
12
|
+
env: {},
|
|
13
|
+
platform: "android"
|
|
14
|
+
};
|
|
15
|
+
const existingProcess = globalThis.process;
|
|
16
|
+
if (!existingProcess) {
|
|
17
|
+
globalThis.process = browserProcess;
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (existingProcess.versions?.node) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const existingProcessRecord = existingProcess;
|
|
24
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
25
|
+
existingProcessRecord[key] ??= value;
|
|
26
|
+
}
|
|
27
|
+
existingProcessRecord["browser"] = true;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
ensureBrowserProcess();
|
|
31
|
+
})();
|
|
32
|
+
(function patchObsidianRequire() {
|
|
33
|
+
const originalRequire = require;
|
|
34
|
+
if (!originalRequire || originalRequire.__isPatched) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
require = Object.assign(
|
|
38
|
+
(id) => requirePatched(id),
|
|
39
|
+
originalRequire,
|
|
40
|
+
{
|
|
41
|
+
__isPatched: true
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
function extractDefault($module) {
|
|
45
|
+
return $module && $module.__esModule && "default" in $module ? $module.default : $module;
|
|
46
|
+
}
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
48
|
+
"@codemirror/autocomplete",
|
|
49
|
+
"@codemirror/collab",
|
|
50
|
+
"@codemirror/commands",
|
|
51
|
+
"@codemirror/language",
|
|
52
|
+
"@codemirror/lint",
|
|
53
|
+
"@codemirror/search",
|
|
54
|
+
"@codemirror/state",
|
|
55
|
+
"@codemirror/text",
|
|
56
|
+
"@codemirror/view",
|
|
57
|
+
"@lezer/common",
|
|
58
|
+
"@lezer/highlight",
|
|
59
|
+
"@lezer/lr",
|
|
60
|
+
"obsidian"
|
|
61
|
+
]);
|
|
62
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
63
|
+
"@codemirror/closebrackets",
|
|
64
|
+
"@codemirror/comment",
|
|
65
|
+
"@codemirror/fold",
|
|
66
|
+
"@codemirror/gutter",
|
|
67
|
+
"@codemirror/highlight",
|
|
68
|
+
"@codemirror/history",
|
|
69
|
+
"@codemirror/matchbrackets",
|
|
70
|
+
"@codemirror/panel",
|
|
71
|
+
"@codemirror/rangeset",
|
|
72
|
+
"@codemirror/rectangular-selection",
|
|
73
|
+
"@codemirror/stream-parser",
|
|
74
|
+
"@codemirror/tooltip"
|
|
75
|
+
]);
|
|
76
|
+
function requirePatched(id) {
|
|
77
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
78
|
+
return originalRequire?.(id);
|
|
79
|
+
}
|
|
80
|
+
const app = globalThis.app;
|
|
81
|
+
if (app?.isMobile) {
|
|
82
|
+
if (id === "process" || id === "node:process") {
|
|
83
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
84
|
+
return process;
|
|
85
|
+
}
|
|
86
|
+
} else {
|
|
87
|
+
const $module = originalRequire?.(id);
|
|
88
|
+
if ($module) {
|
|
89
|
+
return extractDefault($module);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
93
|
+
return {};
|
|
94
|
+
}
|
|
95
|
+
})();
|
|
96
|
+
|
|
97
|
+
"use strict";
|
|
98
|
+
var __defProp = Object.defineProperty;
|
|
99
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
100
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
101
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
102
|
+
var __export = (target, all) => {
|
|
103
|
+
for (var name in all)
|
|
104
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
105
|
+
};
|
|
106
|
+
var __copyProps = (to, from, except, desc) => {
|
|
107
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
108
|
+
for (let key of __getOwnPropNames(from))
|
|
109
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
110
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
111
|
+
}
|
|
112
|
+
return to;
|
|
113
|
+
};
|
|
114
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
115
|
+
var inline_token_widgets_exports = {};
|
|
116
|
+
__export(inline_token_widgets_exports, {
|
|
117
|
+
createInlineTokenWidgetsExtension: () => createInlineTokenWidgetsExtension,
|
|
118
|
+
execAll: () => execAll,
|
|
119
|
+
toGlobalRegExp: () => toGlobalRegExp
|
|
120
|
+
});
|
|
121
|
+
module.exports = __toCommonJS(inline_token_widgets_exports);
|
|
122
|
+
var import_view = require('@codemirror/view');
|
|
123
|
+
var import_object_utils = require('@mnaoumov/typescript-lib/object-utils');
|
|
124
|
+
var import_obsidian = require('obsidian');
|
|
125
|
+
var import_css_class = require('../css-class.cjs');
|
|
126
|
+
const editorInfoStateField = (0, import_object_utils.castTo)(import_obsidian.editorInfoField);
|
|
127
|
+
const editorLivePreviewStateField = (0, import_object_utils.castTo)(import_obsidian.editorLivePreviewField);
|
|
128
|
+
class InlineTokenWidget extends import_view.WidgetType {
|
|
129
|
+
configVersion;
|
|
130
|
+
match;
|
|
131
|
+
render;
|
|
132
|
+
sourcePath;
|
|
133
|
+
state;
|
|
134
|
+
constructor(params) {
|
|
135
|
+
super();
|
|
136
|
+
this.configVersion = params.configVersion;
|
|
137
|
+
this.match = params.match;
|
|
138
|
+
this.render = params.render;
|
|
139
|
+
this.sourcePath = params.sourcePath;
|
|
140
|
+
this.state = params.state;
|
|
141
|
+
}
|
|
142
|
+
eq(other) {
|
|
143
|
+
return other instanceof InlineTokenWidget && other.configVersion === this.configVersion && other.render === this.render && other.sourcePath === this.sourcePath && areMatchesEqual(other.match, this.match);
|
|
144
|
+
}
|
|
145
|
+
toDOM(view) {
|
|
146
|
+
const containerEl = view.dom.ownerDocument.win.createSpan();
|
|
147
|
+
containerEl.classList.add(import_css_class.CssClass.LibraryName, import_css_class.CssClass.InlineToken);
|
|
148
|
+
this.render({
|
|
149
|
+
containerEl,
|
|
150
|
+
match: this.match,
|
|
151
|
+
sourcePath: this.sourcePath,
|
|
152
|
+
state: this.state
|
|
153
|
+
});
|
|
154
|
+
return containerEl;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
function createInlineTokenWidgetsExtension(params) {
|
|
158
|
+
const regExp = toGlobalRegExp(params.regExp);
|
|
159
|
+
const shouldRevealOnSelection = params.shouldRevealOnSelection ?? true;
|
|
160
|
+
class InlineTokenWidgetsPluginValue {
|
|
161
|
+
decorations;
|
|
162
|
+
configVersion = 0;
|
|
163
|
+
/**
|
|
164
|
+
* Builds the decorations of a new editor.
|
|
165
|
+
*
|
|
166
|
+
* @param view - The editor view.
|
|
167
|
+
*/
|
|
168
|
+
constructor(view) {
|
|
169
|
+
this.decorations = this.buildDecorations(view);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Rebuilds the decorations when what they depend on changed.
|
|
173
|
+
*
|
|
174
|
+
* @param update - The view update.
|
|
175
|
+
*/
|
|
176
|
+
update(update) {
|
|
177
|
+
const isReconfigured = update.transactions.some((transaction) => transaction.reconfigured);
|
|
178
|
+
if (isReconfigured) {
|
|
179
|
+
this.configVersion++;
|
|
180
|
+
}
|
|
181
|
+
if (update.docChanged || update.viewportChanged || update.selectionSet || isReconfigured || isLivePreview(update.startState) !== isLivePreview(update.state)) {
|
|
182
|
+
this.decorations = this.buildDecorations(update.view);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
buildDecorations(view) {
|
|
186
|
+
const state = view.state;
|
|
187
|
+
if (!isLivePreview(state)) {
|
|
188
|
+
return import_view.Decoration.none;
|
|
189
|
+
}
|
|
190
|
+
const sourcePath = state.field(editorInfoStateField, false)?.file?.path ?? "";
|
|
191
|
+
const ranges = [];
|
|
192
|
+
let lastLineNumber = 0;
|
|
193
|
+
for (const visibleRange of view.visibleRanges) {
|
|
194
|
+
const firstLineNumber = Math.max(state.doc.lineAt(visibleRange.from).number, lastLineNumber + 1);
|
|
195
|
+
const endLineNumber = state.doc.lineAt(visibleRange.to).number;
|
|
196
|
+
for (let lineNumber = firstLineNumber; lineNumber <= endLineNumber; lineNumber++) {
|
|
197
|
+
const line = state.doc.line(lineNumber);
|
|
198
|
+
for (const match of execAll(regExp, line.text)) {
|
|
199
|
+
const from = line.from + match.index;
|
|
200
|
+
const to = from + match[0].length;
|
|
201
|
+
if (shouldRevealOnSelection && state.selection.ranges.some((range) => range.from <= to && range.to >= from)) {
|
|
202
|
+
continue;
|
|
203
|
+
}
|
|
204
|
+
if (params.shouldDecorate && !params.shouldDecorate({ from, match, state, to })) {
|
|
205
|
+
continue;
|
|
206
|
+
}
|
|
207
|
+
ranges.push(
|
|
208
|
+
import_view.Decoration.replace({
|
|
209
|
+
widget: new InlineTokenWidget({ configVersion: this.configVersion, match, render: params.render, sourcePath, state })
|
|
210
|
+
}).range(from, to)
|
|
211
|
+
);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
lastLineNumber = endLineNumber;
|
|
215
|
+
}
|
|
216
|
+
return import_view.Decoration.set(ranges);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
return import_view.ViewPlugin.fromClass(InlineTokenWidgetsPluginValue, {
|
|
220
|
+
decorations: (value) => value.decorations
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
function execAll(regExp, text) {
|
|
224
|
+
const matches = [];
|
|
225
|
+
regExp.lastIndex = 0;
|
|
226
|
+
for (let match = regExp.exec(text); match !== null; match = regExp.exec(text)) {
|
|
227
|
+
if (match[0] === "") {
|
|
228
|
+
regExp.lastIndex++;
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
matches.push(match);
|
|
232
|
+
}
|
|
233
|
+
return matches;
|
|
234
|
+
}
|
|
235
|
+
function toGlobalRegExp(regExp) {
|
|
236
|
+
return new RegExp(regExp.source, regExp.global ? regExp.flags : `${regExp.flags}g`);
|
|
237
|
+
}
|
|
238
|
+
function areMatchesEqual(a, b) {
|
|
239
|
+
return a.length === b.length && a.every((value, index) => value === b[index]);
|
|
240
|
+
}
|
|
241
|
+
function isLivePreview(state) {
|
|
242
|
+
return state.field(editorLivePreviewStateField, false) ?? true;
|
|
243
|
+
}
|
|
244
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
245
|
+
0 && (module.exports = {
|
|
246
|
+
createInlineTokenWidgetsExtension,
|
|
247
|
+
execAll,
|
|
248
|
+
toGlobalRegExp
|
|
249
|
+
});
|
|
250
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlbWlycm9yL2lubGluZS10b2tlbi13aWRnZXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDcmVhdGVzIGFuIGVkaXRvciBleHRlbnNpb24gdGhhdCByZXBsYWNlcyBldmVyeSBtYXRjaCBvZiBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aXRoIGEgd2lkZ2V0IGluIExpdmUgUHJldmlldywgYW5kXG4gKiBzaG93cyB0aGUgc291cmNlIGFnYWluIHdoaWxlIGEgc2VsZWN0aW9uIHRvdWNoZXMgaXQsIHRoZSB3YXkgT2JzaWRpYW4gdHJlYXRzIGl0cyBvd24gbGlua3MgYW5kIGZvcm1hdHRpbmcuXG4gKlxuICogT25seSB0aGUgdmlzaWJsZSByYW5nZXMgYXJlIG1hdGNoZWQsIGxpbmUgYnkgbGluZSwgc28gYSB0b2tlbiBuZXZlciBzcGFucyB0d28gbGluZXMuIFRoZSBkZWNvcmF0aW9ucyBhcmUgcmVidWlsdFxuICogd2hlbiB0aGUgZG9jdW1lbnQsIHRoZSB2aWV3cG9ydCwgdGhlIHNlbGVjdGlvbiwgdGhlIExpdmUgUHJldmlldyBtb2RlIG9yIHRoZSBjb25maWd1cmF0aW9uIGNoYW5nZXM7IGFcbiAqIGNvbmZpZ3VyYXRpb24gY2hhbmdlIGlzIHdoYXQgYSBgU2V0dGluZ3NGYWNldENvbXBvbmVudGAgZGlzcGF0Y2hlcywgc28gYSByZW5kZXIgdGhhdCByZWFkcyBhIHNldHRpbmdzIGZhY2V0XG4gKiByZS1ydW5zIHdoZW4gdGhlIHNldHRpbmdzIGRvLlxuICpcbiAqIE91dHNpZGUgYW4gT2JzaWRpYW4gTWFya2Rvd24gZWRpdG9yIHRoZXJlIGlzIG5vIGBlZGl0b3JMaXZlUHJldmlld0ZpZWxkYCwgYW5kIHRoZSB3aWRnZXRzIGFyZSBzaG93bi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEVkaXRvclN0YXRlLFxuICBFeHRlbnNpb24sXG4gIFJhbmdlLFxuICBTdGF0ZUZpZWxkXG59IGZyb20gJ0Bjb2RlbWlycm9yL3N0YXRlJztcbmltcG9ydCB0eXBlIHtcbiAgRGVjb3JhdGlvblNldCxcbiAgRWRpdG9yVmlldyxcbiAgUGx1Z2luVmFsdWUsXG4gIFZpZXdVcGRhdGVcbn0gZnJvbSAnQGNvZGVtaXJyb3Ivdmlldyc7XG5pbXBvcnQgdHlwZSB7IE1hcmtkb3duRmlsZUluZm8gfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7XG4gIERlY29yYXRpb24sXG4gIFZpZXdQbHVnaW4sXG4gIFdpZGdldFR5cGVcbn0gZnJvbSAnQGNvZGVtaXJyb3Ivdmlldyc7XG5pbXBvcnQgeyBjYXN0VG8gfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvb2JqZWN0LXV0aWxzJztcbmltcG9ydCB7XG4gIGVkaXRvckluZm9GaWVsZCxcbiAgZWRpdG9yTGl2ZVByZXZpZXdGaWVsZFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcblxuLy8gT2JzaWRpYW4uZC50cyByZWFjaGVzIEBjb2RlbWlycm9yL3N0YXRlIHRocm91Z2ggaXRzIENvbW1vbkpTIGRlY2xhcmF0aW9ucyBhbmQgdGhpcyBtb2R1bGUgdGhyb3VnaCB0aGUgRVMgb25lcywgYW5kXG4vLyBTdGF0ZUZpZWxkIGhhcyBwcml2YXRlIG1lbWJlcnMsIHNvIHRoZSB0d28gZGVjbGFyYXRpb25zIG9mIG9uZSBydW50aW1lIGNsYXNzIGRvIG5vdCB0eXBlLWNoZWNrIGFnYWluc3QgZWFjaCBvdGhlci5cbmNvbnN0IGVkaXRvckluZm9TdGF0ZUZpZWxkID0gY2FzdFRvPFN0YXRlRmllbGQ8TWFya2Rvd25GaWxlSW5mbz4+KGVkaXRvckluZm9GaWVsZCk7XG5jb25zdCBlZGl0b3JMaXZlUHJldmlld1N0YXRlRmllbGQgPSBjYXN0VG88U3RhdGVGaWVsZDxib29sZWFuPj4oZWRpdG9yTGl2ZVByZXZpZXdGaWVsZCk7XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGNyZWF0ZUlubGluZVRva2VuV2lkZ2V0c0V4dGVuc2lvbn0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlSW5saW5lVG9rZW5XaWRnZXRzRXh0ZW5zaW9uUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSByZWd1bGFyIGV4cHJlc3Npb24gYSB0b2tlbiBtYXRjaGVzLiBUaGUgYGdgIGZsYWcgaXMgYWRkZWQgd2hlbiBtaXNzaW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVnRXhwOiBSZWdFeHA7XG5cbiAgLyoqXG4gICAqIFJlbmRlcnMgYSB0b2tlbiBpbnRvIHRoZSB3aWRnZXQncyBlbGVtZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcmVuZGVyOiBJbmxpbmVUb2tlblJlbmRlckZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBEZWNpZGVzIHdoZXRoZXIgYSBtYXRjaCBiZWNvbWVzIGEgd2lkZ2V0LCBzdWNoIGFzIHRvIHNraXAgYSBtYXRjaCBpbnNpZGUgY29kZS4gRXZlcnkgbWF0Y2ggZG9lcyBieSBkZWZhdWx0LlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkRGVjb3JhdGU/OiAocGFyYW1zOiBJbmxpbmVUb2tlblNob3VsZERlY29yYXRlUGFyYW1zKSA9PiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgdG9rZW4gc2hvd3MgaXRzIHNvdXJjZSB3aGlsZSBhIHNlbGVjdGlvbiwgdGhlIGN1cnNvciBpbmNsdWRlZCwgdG91Y2hlcyBpdC5cbiAgICpcbiAgICogQGRlZmF1bHQgYHRydWVgXG4gICAqL1xuICByZWFkb25seSBzaG91bGRSZXZlYWxPblNlbGVjdGlvbj86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUmVuZGVycyBhbiBpbmxpbmUgdG9rZW4gaW50byBpdHMgY29udGFpbmVyIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSByZW5kZXIgcGFyYW1ldGVycy5cbiAqL1xuZXhwb3J0IHR5cGUgSW5saW5lVG9rZW5SZW5kZXJGdW5jdGlvbiA9IChwYXJhbXM6IElubGluZVRva2VuUmVuZGVyUGFyYW1zKSA9PiB2b2lkO1xuXG4vKipcbiAqIFBhcmFtZXRlcnMgaGFuZGVkIHRvIGFuIGlubGluZSB0b2tlbiByZW5kZXIgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5saW5lVG9rZW5SZW5kZXJQYXJhbXMge1xuICAvKipcbiAgICogVGhlIGVsZW1lbnQgdG8gcmVuZGVyIHRoZSB0b2tlbiBpbnRvLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFpbmVyRWw6IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgbWF0Y2ggb2YgdGhlIHRva2VuJ3MgcmVndWxhciBleHByZXNzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheTtcblxuICAvKipcbiAgICogVGhlIHBhdGggb2YgdGhlIG5vdGUgdGhlIHRva2VuIGlzIGluLCBvciBhbiBlbXB0eSBzdHJpbmcgd2hlbiBpdCBpcyBub3Qga25vd24uXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBlZGl0b3Igc3RhdGUsIHdoZW4gdGhlIHRva2VuIHJlbmRlcnMgaW4gYW4gZWRpdG9yLiBBYnNlbnQgaW4gUmVhZGluZyB2aWV3LlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdGU/OiBFZGl0b3JTdGF0ZTtcbn1cblxuLyoqXG4gKiBQYXJhbWV0ZXJzIGhhbmRlZCB0byB7QGxpbmsgQ3JlYXRlSW5saW5lVG9rZW5XaWRnZXRzRXh0ZW5zaW9uUGFyYW1zLnNob3VsZERlY29yYXRlfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbmxpbmVUb2tlblNob3VsZERlY29yYXRlUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBkb2N1bWVudCBwb3NpdGlvbiB0aGUgbWF0Y2ggc3RhcnRzIGF0LlxuICAgKi9cbiAgcmVhZG9ubHkgZnJvbTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF0Y2ggb2YgdGhlIHRva2VuJ3MgcmVndWxhciBleHByZXNzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheTtcblxuICAvKipcbiAgICogVGhlIGVkaXRvciBzdGF0ZS5cbiAgICovXG4gIHJlYWRvbmx5IHN0YXRlOiBFZGl0b3JTdGF0ZTtcblxuICAvKipcbiAgICogVGhlIGRvY3VtZW50IHBvc2l0aW9uIHRoZSBtYXRjaCBlbmRzIGF0LlxuICAgKi9cbiAgcmVhZG9ubHkgdG86IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIElubGluZVRva2VuV2lkZ2V0UGFyYW1zIHtcbiAgcmVhZG9ubHkgY29uZmlnVmVyc2lvbjogbnVtYmVyO1xuICByZWFkb25seSBtYXRjaDogUmVnRXhwRXhlY0FycmF5O1xuICByZWFkb25seSByZW5kZXI6IElubGluZVRva2VuUmVuZGVyRnVuY3Rpb247XG4gIHJlYWRvbmx5IHNvdXJjZVBhdGg6IHN0cmluZztcbiAgcmVhZG9ubHkgc3RhdGU6IEVkaXRvclN0YXRlO1xufVxuXG5jbGFzcyBJbmxpbmVUb2tlbldpZGdldCBleHRlbmRzIFdpZGdldFR5cGUge1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ1ZlcnNpb246IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBtYXRjaDogUmVnRXhwRXhlY0FycmF5O1xuICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcjogSW5saW5lVG9rZW5SZW5kZXJGdW5jdGlvbjtcbiAgcHJpdmF0ZSByZWFkb25seSBzb3VyY2VQYXRoOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3RhdGU6IEVkaXRvclN0YXRlO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IElubGluZVRva2VuV2lkZ2V0UGFyYW1zKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmNvbmZpZ1ZlcnNpb24gPSBwYXJhbXMuY29uZmlnVmVyc2lvbjtcbiAgICB0aGlzLm1hdGNoID0gcGFyYW1zLm1hdGNoO1xuICAgIHRoaXMucmVuZGVyID0gcGFyYW1zLnJlbmRlcjtcbiAgICB0aGlzLnNvdXJjZVBhdGggPSBwYXJhbXMuc291cmNlUGF0aDtcbiAgICB0aGlzLnN0YXRlID0gcGFyYW1zLnN0YXRlO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGVxKG90aGVyOiBXaWRnZXRUeXBlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG90aGVyIGluc3RhbmNlb2YgSW5saW5lVG9rZW5XaWRnZXRcbiAgICAgICYmIG90aGVyLmNvbmZpZ1ZlcnNpb24gPT09IHRoaXMuY29uZmlnVmVyc2lvblxuICAgICAgJiYgb3RoZXIucmVuZGVyID09PSB0aGlzLnJlbmRlclxuICAgICAgJiYgb3RoZXIuc291cmNlUGF0aCA9PT0gdGhpcy5zb3VyY2VQYXRoXG4gICAgICAmJiBhcmVNYXRjaGVzRXF1YWwob3RoZXIubWF0Y2gsIHRoaXMubWF0Y2gpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHRvRE9NKHZpZXc6IEVkaXRvclZpZXcpOiBIVE1MRWxlbWVudCB7XG4gICAgY29uc3QgY29udGFpbmVyRWwgPSB2aWV3LmRvbS5vd25lckRvY3VtZW50Lndpbi5jcmVhdGVTcGFuKCk7XG4gICAgY29udGFpbmVyRWwuY2xhc3NMaXN0LmFkZChDc3NDbGFzcy5MaWJyYXJ5TmFtZSwgQ3NzQ2xhc3MuSW5saW5lVG9rZW4pO1xuICAgIHRoaXMucmVuZGVyKHtcbiAgICAgIGNvbnRhaW5lckVsLFxuICAgICAgbWF0Y2g6IHRoaXMubWF0Y2gsXG4gICAgICBzb3VyY2VQYXRoOiB0aGlzLnNvdXJjZVBhdGgsXG4gICAgICBzdGF0ZTogdGhpcy5zdGF0ZVxuICAgIH0pO1xuICAgIHJldHVybiBjb250YWluZXJFbDtcbiAgfVxufVxuXG4vKipcbiAqIENyZWF0ZXMgYW4gZWRpdG9yIGV4dGVuc2lvbiB0aGF0IHJlcGxhY2VzIGV2ZXJ5IG1hdGNoIG9mIGEgcmVndWxhciBleHByZXNzaW9uIHdpdGggYSB3aWRnZXQgaW4gTGl2ZSBQcmV2aWV3LlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgZXh0ZW5zaW9uIHBhcmFtZXRlcnMuXG4gKiBAcmV0dXJucyBUaGUgZWRpdG9yIGV4dGVuc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUlubGluZVRva2VuV2lkZ2V0c0V4dGVuc2lvbihwYXJhbXM6IENyZWF0ZUlubGluZVRva2VuV2lkZ2V0c0V4dGVuc2lvblBhcmFtcyk6IEV4dGVuc2lvbiB7XG4gIGNvbnN0IHJlZ0V4cCA9IHRvR2xvYmFsUmVnRXhwKHBhcmFtcy5yZWdFeHApO1xuICBjb25zdCBzaG91bGRSZXZlYWxPblNlbGVjdGlvbiA9IHBhcmFtcy5zaG91bGRSZXZlYWxPblNlbGVjdGlvbiA/PyB0cnVlO1xuXG4gIGNsYXNzIElubGluZVRva2VuV2lkZ2V0c1BsdWdpblZhbHVlIGltcGxlbWVudHMgUGx1Z2luVmFsdWUge1xuICAgIHB1YmxpYyBkZWNvcmF0aW9uczogRGVjb3JhdGlvblNldDtcbiAgICBwcml2YXRlIGNvbmZpZ1ZlcnNpb24gPSAwO1xuXG4gICAgLyoqXG4gICAgICogQnVpbGRzIHRoZSBkZWNvcmF0aW9ucyBvZiBhIG5ldyBlZGl0b3IuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdmlldyAtIFRoZSBlZGl0b3Igdmlldy5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IodmlldzogRWRpdG9yVmlldykge1xuICAgICAgdGhpcy5kZWNvcmF0aW9ucyA9IHRoaXMuYnVpbGREZWNvcmF0aW9ucyh2aWV3KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWJ1aWxkcyB0aGUgZGVjb3JhdGlvbnMgd2hlbiB3aGF0IHRoZXkgZGVwZW5kIG9uIGNoYW5nZWQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdXBkYXRlIC0gVGhlIHZpZXcgdXBkYXRlLlxuICAgICAqL1xuICAgIHB1YmxpYyB1cGRhdGUodXBkYXRlOiBWaWV3VXBkYXRlKTogdm9pZCB7XG4gICAgICBjb25zdCBpc1JlY29uZmlndXJlZCA9IHVwZGF0ZS50cmFuc2FjdGlvbnMuc29tZSgodHJhbnNhY3Rpb24pID0+IHRyYW5zYWN0aW9uLnJlY29uZmlndXJlZCk7XG4gICAgICBpZiAoaXNSZWNvbmZpZ3VyZWQpIHtcbiAgICAgICAgdGhpcy5jb25maWdWZXJzaW9uKys7XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIHVwZGF0ZS5kb2NDaGFuZ2VkXG4gICAgICAgIHx8IHVwZGF0ZS52aWV3cG9ydENoYW5nZWRcbiAgICAgICAgfHwgdXBkYXRlLnNlbGVjdGlvblNldFxuICAgICAgICB8fCBpc1JlY29uZmlndXJlZFxuICAgICAgICB8fCBpc0xpdmVQcmV2aWV3KHVwZGF0ZS5zdGFydFN0YXRlKSAhPT0gaXNMaXZlUHJldmlldyh1cGRhdGUuc3RhdGUpXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5kZWNvcmF0aW9ucyA9IHRoaXMuYnVpbGREZWNvcmF0aW9ucyh1cGRhdGUudmlldyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBidWlsZERlY29yYXRpb25zKHZpZXc6IEVkaXRvclZpZXcpOiBEZWNvcmF0aW9uU2V0IHtcbiAgICAgIGNvbnN0IHN0YXRlID0gdmlldy5zdGF0ZTtcbiAgICAgIGlmICghaXNMaXZlUHJldmlldyhzdGF0ZSkpIHtcbiAgICAgICAgcmV0dXJuIERlY29yYXRpb24ubm9uZTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgc291cmNlUGF0aCA9IHN0YXRlLmZpZWxkKGVkaXRvckluZm9TdGF0ZUZpZWxkLCBmYWxzZSk/LmZpbGU/LnBhdGggPz8gJyc7XG4gICAgICBjb25zdCByYW5nZXM6IFJhbmdlPERlY29yYXRpb24+W10gPSBbXTtcbiAgICAgIGxldCBsYXN0TGluZU51bWJlciA9IDA7XG5cbiAgICAgIGZvciAoY29uc3QgdmlzaWJsZVJhbmdlIG9mIHZpZXcudmlzaWJsZVJhbmdlcykge1xuICAgICAgICBjb25zdCBmaXJzdExpbmVOdW1iZXIgPSBNYXRoLm1heChzdGF0ZS5kb2MubGluZUF0KHZpc2libGVSYW5nZS5mcm9tKS5udW1iZXIsIGxhc3RMaW5lTnVtYmVyICsgMSk7XG4gICAgICAgIGNvbnN0IGVuZExpbmVOdW1iZXIgPSBzdGF0ZS5kb2MubGluZUF0KHZpc2libGVSYW5nZS50bykubnVtYmVyO1xuICAgICAgICBmb3IgKGxldCBsaW5lTnVtYmVyID0gZmlyc3RMaW5lTnVtYmVyOyBsaW5lTnVtYmVyIDw9IGVuZExpbmVOdW1iZXI7IGxpbmVOdW1iZXIrKykge1xuICAgICAgICAgIGNvbnN0IGxpbmUgPSBzdGF0ZS5kb2MubGluZShsaW5lTnVtYmVyKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IG1hdGNoIG9mIGV4ZWNBbGwocmVnRXhwLCBsaW5lLnRleHQpKSB7XG4gICAgICAgICAgICBjb25zdCBmcm9tID0gbGluZS5mcm9tICsgbWF0Y2guaW5kZXg7XG4gICAgICAgICAgICBjb25zdCB0byA9IGZyb20gKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgICAgICAgICBpZiAoc2hvdWxkUmV2ZWFsT25TZWxlY3Rpb24gJiYgc3RhdGUuc2VsZWN0aW9uLnJhbmdlcy5zb21lKChyYW5nZSkgPT4gcmFuZ2UuZnJvbSA8PSB0byAmJiByYW5nZS50byA+PSBmcm9tKSkge1xuICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJhbXMuc2hvdWxkRGVjb3JhdGUgJiYgIXBhcmFtcy5zaG91bGREZWNvcmF0ZSh7IGZyb20sIG1hdGNoLCBzdGF0ZSwgdG8gfSkpIHtcbiAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByYW5nZXMucHVzaChcbiAgICAgICAgICAgICAgRGVjb3JhdGlvbi5yZXBsYWNlKHtcbiAgICAgICAgICAgICAgICB3aWRnZXQ6IG5ldyBJbmxpbmVUb2tlbldpZGdldCh7IGNvbmZpZ1ZlcnNpb246IHRoaXMuY29uZmlnVmVyc2lvbiwgbWF0Y2gsIHJlbmRlcjogcGFyYW1zLnJlbmRlciwgc291cmNlUGF0aCwgc3RhdGUgfSlcbiAgICAgICAgICAgICAgfSkucmFuZ2UoZnJvbSwgdG8pXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsYXN0TGluZU51bWJlciA9IGVuZExpbmVOdW1iZXI7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBEZWNvcmF0aW9uLnNldChyYW5nZXMpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBWaWV3UGx1Z2luLmZyb21DbGFzcyhJbmxpbmVUb2tlbldpZGdldHNQbHVnaW5WYWx1ZSwge1xuICAgIGRlY29yYXRpb25zOiAodmFsdWUpID0+IHZhbHVlLmRlY29yYXRpb25zXG4gIH0pO1xufVxuXG4vKipcbiAqIExpc3RzIGV2ZXJ5IG5vbi1lbXB0eSBtYXRjaCBvZiBhIGdsb2JhbCByZWd1bGFyIGV4cHJlc3Npb24gaW4gYSB0ZXh0LlxuICpcbiAqIEBwYXJhbSByZWdFeHAgLSBUaGUgZ2xvYmFsIHJlZ3VsYXIgZXhwcmVzc2lvbi5cbiAqIEBwYXJhbSB0ZXh0IC0gVGhlIHRleHQgdG8gbWF0Y2guXG4gKiBAcmV0dXJucyBUaGUgbWF0Y2hlcywgaW4gb3JkZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleGVjQWxsKHJlZ0V4cDogUmVnRXhwLCB0ZXh0OiBzdHJpbmcpOiBSZWdFeHBFeGVjQXJyYXlbXSB7XG4gIGNvbnN0IG1hdGNoZXM6IFJlZ0V4cEV4ZWNBcnJheVtdID0gW107XG4gIHJlZ0V4cC5sYXN0SW5kZXggPSAwO1xuICBmb3IgKGxldCBtYXRjaCA9IHJlZ0V4cC5leGVjKHRleHQpOyBtYXRjaCAhPT0gbnVsbDsgbWF0Y2ggPSByZWdFeHAuZXhlYyh0ZXh0KSkge1xuICAgIGlmIChtYXRjaFswXSA9PT0gJycpIHtcbiAgICAgIHJlZ0V4cC5sYXN0SW5kZXgrKztcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBtYXRjaGVzLnB1c2gobWF0Y2gpO1xuICB9XG4gIHJldHVybiBtYXRjaGVzO1xufVxuXG4vKipcbiAqIENvcGllcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB3aXRoIHRoZSBgZ2AgZmxhZyBzZXQsIHNvIG1hdGNoaW5nIG5ldmVyIG1vdmVzIHRoZSBjYWxsZXIncyBgbGFzdEluZGV4YC5cbiAqXG4gKiBAcGFyYW0gcmVnRXhwIC0gVGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi5cbiAqIEByZXR1cm5zIEEgZ2xvYmFsIGNvcHkgb2YgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvR2xvYmFsUmVnRXhwKHJlZ0V4cDogUmVnRXhwKTogUmVnRXhwIHtcbiAgcmV0dXJuIG5ldyBSZWdFeHAocmVnRXhwLnNvdXJjZSwgcmVnRXhwLmdsb2JhbCA/IHJlZ0V4cC5mbGFncyA6IGAke3JlZ0V4cC5mbGFnc31nYCk7XG59XG5cbmZ1bmN0aW9uIGFyZU1hdGNoZXNFcXVhbChhOiBSZWdFeHBFeGVjQXJyYXksIGI6IFJlZ0V4cEV4ZWNBcnJheSk6IGJvb2xlYW4ge1xuICByZXR1cm4gYS5sZW5ndGggPT09IGIubGVuZ3RoICYmIGEuZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4gdmFsdWUgPT09IGJbaW5kZXhdKTtcbn1cblxuZnVuY3Rpb24gaXNMaXZlUHJldmlldyhzdGF0ZTogRWRpdG9yU3RhdGUpOiBib29sZWFuIHtcbiAgcmV0dXJuIHN0YXRlLmZpZWxkKGVkaXRvckxpdmVQcmV2aWV3U3RhdGVGaWVsZCwgZmFsc2UpID8/IHRydWU7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBNEJBLGtCQUlPO0FBQ1AsMEJBQXVCO0FBQ3ZCLHNCQUdPO0FBRVAsdUJBQXlCO0FBSXpCLE1BQU0sMkJBQXVCLDRCQUFxQywrQkFBZTtBQUNqRixNQUFNLGtDQUE4Qiw0QkFBNEIs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
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/// <reference path="../library-references.d.cts" />
|
|
2
|
+
/// <reference lib="dom" />
|
|
3
|
+
/**
|
|
4
|
+
* @file
|
|
5
|
+
*
|
|
6
|
+
* Creates an editor extension that replaces every match of a regular expression with a widget in Live Preview, and
|
|
7
|
+
* shows the source again while a selection touches it, the way Obsidian treats its own links and formatting.
|
|
8
|
+
*
|
|
9
|
+
* Only the visible ranges are matched, line by line, so a token never spans two lines. The decorations are rebuilt
|
|
10
|
+
* when the document, the viewport, the selection, the Live Preview mode or the configuration changes; a
|
|
11
|
+
* configuration change is what a `SettingsFacetComponent` dispatches, so a render that reads a settings facet
|
|
12
|
+
* re-runs when the settings do.
|
|
13
|
+
*
|
|
14
|
+
* Outside an Obsidian Markdown editor there is no `editorLivePreviewField`, and the widgets are shown.
|
|
15
|
+
*/
|
|
16
|
+
import type { EditorState, Extension } from '@codemirror/state' with { 'resolution-mode': 'import' };
|
|
17
|
+
/**
|
|
18
|
+
* Parameters for {@link createInlineTokenWidgetsExtension}.
|
|
19
|
+
*/
|
|
20
|
+
export interface CreateInlineTokenWidgetsExtensionParams {
|
|
21
|
+
/**
|
|
22
|
+
* The regular expression a token matches. The `g` flag is added when missing.
|
|
23
|
+
*/
|
|
24
|
+
readonly regExp: RegExp;
|
|
25
|
+
/**
|
|
26
|
+
* Renders a token into the widget's element.
|
|
27
|
+
*/
|
|
28
|
+
readonly render: InlineTokenRenderFunction;
|
|
29
|
+
/**
|
|
30
|
+
* Decides whether a match becomes a widget, such as to skip a match inside code. Every match does by default.
|
|
31
|
+
*/
|
|
32
|
+
readonly shouldDecorate?: (params: InlineTokenShouldDecorateParams) => boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Whether a token shows its source while a selection, the cursor included, touches it.
|
|
35
|
+
*
|
|
36
|
+
* @default `true`
|
|
37
|
+
*/
|
|
38
|
+
readonly shouldRevealOnSelection?: boolean;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Renders an inline token into its container element.
|
|
42
|
+
*
|
|
43
|
+
* @param params - The render parameters.
|
|
44
|
+
*/
|
|
45
|
+
export type InlineTokenRenderFunction = (params: InlineTokenRenderParams) => void;
|
|
46
|
+
/**
|
|
47
|
+
* Parameters handed to an inline token render function.
|
|
48
|
+
*/
|
|
49
|
+
export interface InlineTokenRenderParams {
|
|
50
|
+
/**
|
|
51
|
+
* The element to render the token into.
|
|
52
|
+
*/
|
|
53
|
+
readonly containerEl: HTMLElement;
|
|
54
|
+
/**
|
|
55
|
+
* The match of the token's regular expression.
|
|
56
|
+
*/
|
|
57
|
+
readonly match: RegExpExecArray;
|
|
58
|
+
/**
|
|
59
|
+
* The path of the note the token is in, or an empty string when it is not known.
|
|
60
|
+
*/
|
|
61
|
+
readonly sourcePath: string;
|
|
62
|
+
/**
|
|
63
|
+
* The editor state, when the token renders in an editor. Absent in Reading view.
|
|
64
|
+
*/
|
|
65
|
+
readonly state?: EditorState;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Parameters handed to {@link CreateInlineTokenWidgetsExtensionParams.shouldDecorate}.
|
|
69
|
+
*/
|
|
70
|
+
export interface InlineTokenShouldDecorateParams {
|
|
71
|
+
/**
|
|
72
|
+
* The document position the match starts at.
|
|
73
|
+
*/
|
|
74
|
+
readonly from: number;
|
|
75
|
+
/**
|
|
76
|
+
* The match of the token's regular expression.
|
|
77
|
+
*/
|
|
78
|
+
readonly match: RegExpExecArray;
|
|
79
|
+
/**
|
|
80
|
+
* The editor state.
|
|
81
|
+
*/
|
|
82
|
+
readonly state: EditorState;
|
|
83
|
+
/**
|
|
84
|
+
* The document position the match ends at.
|
|
85
|
+
*/
|
|
86
|
+
readonly to: number;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Creates an editor extension that replaces every match of a regular expression with a widget in Live Preview.
|
|
90
|
+
*
|
|
91
|
+
* @param params - The extension parameters.
|
|
92
|
+
* @returns The editor extension.
|
|
93
|
+
*/
|
|
94
|
+
export declare function createInlineTokenWidgetsExtension(params: CreateInlineTokenWidgetsExtensionParams): Extension;
|
|
95
|
+
/**
|
|
96
|
+
* Lists every non-empty match of a global regular expression in a text.
|
|
97
|
+
*
|
|
98
|
+
* @param regExp - The global regular expression.
|
|
99
|
+
* @param text - The text to match.
|
|
100
|
+
* @returns The matches, in order.
|
|
101
|
+
*/
|
|
102
|
+
export declare function execAll(regExp: RegExp, text: string): RegExpExecArray[];
|
|
103
|
+
/**
|
|
104
|
+
* Copies a regular expression with the `g` flag set, so matching never moves the caller's `lastIndex`.
|
|
105
|
+
*
|
|
106
|
+
* @param regExp - The regular expression.
|
|
107
|
+
* @returns A global copy of the regular expression.
|
|
108
|
+
*/
|
|
109
|
+
export declare function toGlobalRegExp(regExp: RegExp): RegExp;
|
|
@@ -0,0 +1,132 @@
|
|
|
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 () {
|
|
6
|
+
function ensureBrowserProcess() {
|
|
7
|
+
const browserProcess = {
|
|
8
|
+
browser: true,
|
|
9
|
+
cwd() {
|
|
10
|
+
return "/";
|
|
11
|
+
},
|
|
12
|
+
env: {},
|
|
13
|
+
platform: "android"
|
|
14
|
+
};
|
|
15
|
+
const existingProcess = globalThis.process;
|
|
16
|
+
if (!existingProcess) {
|
|
17
|
+
globalThis.process = browserProcess;
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (existingProcess.versions?.node) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const existingProcessRecord = existingProcess;
|
|
24
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
25
|
+
existingProcessRecord[key] ??= value;
|
|
26
|
+
}
|
|
27
|
+
existingProcessRecord["browser"] = true;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
ensureBrowserProcess();
|
|
31
|
+
})();
|
|
32
|
+
(function patchObsidianRequire() {
|
|
33
|
+
const originalRequire = require;
|
|
34
|
+
if (!originalRequire || originalRequire.__isPatched) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
require = Object.assign(
|
|
38
|
+
(id) => requirePatched(id),
|
|
39
|
+
originalRequire,
|
|
40
|
+
{
|
|
41
|
+
__isPatched: true
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
function extractDefault($module) {
|
|
45
|
+
return $module && $module.__esModule && "default" in $module ? $module.default : $module;
|
|
46
|
+
}
|
|
47
|
+
const OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
48
|
+
"@codemirror/autocomplete",
|
|
49
|
+
"@codemirror/collab",
|
|
50
|
+
"@codemirror/commands",
|
|
51
|
+
"@codemirror/language",
|
|
52
|
+
"@codemirror/lint",
|
|
53
|
+
"@codemirror/search",
|
|
54
|
+
"@codemirror/state",
|
|
55
|
+
"@codemirror/text",
|
|
56
|
+
"@codemirror/view",
|
|
57
|
+
"@lezer/common",
|
|
58
|
+
"@lezer/highlight",
|
|
59
|
+
"@lezer/lr",
|
|
60
|
+
"obsidian"
|
|
61
|
+
]);
|
|
62
|
+
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = /* @__PURE__ */ new Set([
|
|
63
|
+
"@codemirror/closebrackets",
|
|
64
|
+
"@codemirror/comment",
|
|
65
|
+
"@codemirror/fold",
|
|
66
|
+
"@codemirror/gutter",
|
|
67
|
+
"@codemirror/highlight",
|
|
68
|
+
"@codemirror/history",
|
|
69
|
+
"@codemirror/matchbrackets",
|
|
70
|
+
"@codemirror/panel",
|
|
71
|
+
"@codemirror/rangeset",
|
|
72
|
+
"@codemirror/rectangular-selection",
|
|
73
|
+
"@codemirror/stream-parser",
|
|
74
|
+
"@codemirror/tooltip"
|
|
75
|
+
]);
|
|
76
|
+
function requirePatched(id) {
|
|
77
|
+
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.has(id)) {
|
|
78
|
+
return originalRequire?.(id);
|
|
79
|
+
}
|
|
80
|
+
const app = globalThis.app;
|
|
81
|
+
if (app?.isMobile) {
|
|
82
|
+
if (id === "process" || id === "node:process") {
|
|
83
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
|
|
84
|
+
return process;
|
|
85
|
+
}
|
|
86
|
+
} else {
|
|
87
|
+
const $module = originalRequire?.(id);
|
|
88
|
+
if ($module) {
|
|
89
|
+
return extractDefault($module);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
|
|
93
|
+
return {};
|
|
94
|
+
}
|
|
95
|
+
})();
|
|
96
|
+
|
|
97
|
+
"use strict";
|
|
98
|
+
var __defProp = Object.defineProperty;
|
|
99
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
100
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
101
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
102
|
+
var __export = (target, all) => {
|
|
103
|
+
for (var name in all)
|
|
104
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
105
|
+
};
|
|
106
|
+
var __copyProps = (to, from, except, desc) => {
|
|
107
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
108
|
+
for (let key of __getOwnPropNames(from))
|
|
109
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
110
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
111
|
+
}
|
|
112
|
+
return to;
|
|
113
|
+
};
|
|
114
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
115
|
+
var settings_facet_exports = {};
|
|
116
|
+
__export(settings_facet_exports, {
|
|
117
|
+
createSettingsFacet: () => createSettingsFacet
|
|
118
|
+
});
|
|
119
|
+
module.exports = __toCommonJS(settings_facet_exports);
|
|
120
|
+
var import_state = require('@codemirror/state');
|
|
121
|
+
function createSettingsFacet(defaultValue) {
|
|
122
|
+
return import_state.Facet.define({
|
|
123
|
+
combine(values) {
|
|
124
|
+
return values.length === 0 ? defaultValue : values.at(-1);
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
129
|
+
0 && (module.exports = {
|
|
130
|
+
createSettingsFacet
|
|
131
|
+
});
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlbWlycm9yL3NldHRpbmdzLWZhY2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDcmVhdGVzIGEgQ29kZU1pcnJvciB7QGxpbmsgRmFjZXR9IHRoYXQgY2FycmllcyBhIHBsdWdpbidzIHNldHRpbmdzIGludG8gaXRzIGVkaXRvciBleHRlbnNpb25zLlxuICpcbiAqIEFuIGV4dGVuc2lvbiByZWFkcyB0aGUgc2V0dGluZ3Mgd2l0aCBgc3RhdGUuZmFjZXQoc2V0dGluZ3NGYWNldClgIGluc3RlYWQgb2YgY2xvc2luZyBvdmVyIGEgc2V0dGluZ3Mgb2JqZWN0LCBzbyBhXG4gKiBjaGFuZ2UgcmVhY2hlcyBldmVyeSBlZGl0b3IgYXMgYW4gb3JkaW5hcnkgcmVjb25maWd1cmU6IGBTZXR0aW5nc0ZhY2V0Q29tcG9uZW50YCBzd2FwcyBgc2V0dGluZ3NGYWNldC5vZihzZXR0aW5ncylgXG4gKiBpbiBhIGNvbXBhcnRtZW50LCBhbmQgZXZlcnkgdmlldyBwbHVnaW4gYW5kIHN0YXRlIGZpZWxkIHNlZXMgdGhlIG5ldyB2YWx1ZSBpbiB0aGUgc2FtZSB1cGRhdGUuXG4gKi9cblxuaW1wb3J0IHsgRmFjZXQgfSBmcm9tICdAY29kZW1pcnJvci9zdGF0ZSc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGZhY2V0IHdob3NlIHZhbHVlIGlzIHRoZSBsYXN0IHNldHRpbmdzIHZhbHVlIHByb3ZpZGVkLCBvciB0aGUgZGVmYXVsdCB3aGVuIG5vbmUgaXMuXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHNldHRpbmdzIHR5cGUuXG4gKiBAcGFyYW0gZGVmYXVsdFZhbHVlIC0gVGhlIHZhbHVlIGFuIGVkaXRvciByZWFkcyB3aGVuIG5vIHNldHRpbmdzIGFyZSBwcm92aWRlZC5cbiAqIEByZXR1cm5zIFRoZSBzZXR0aW5ncyBmYWNldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNldHRpbmdzRmFjZXQ8VD4oZGVmYXVsdFZhbHVlOiBUKTogRmFjZXQ8VCwgVD4ge1xuICByZXR1cm4gRmFjZXQuZGVmaW5lPFQsIFQ+KHtcbiAgICBjb21iaW5lKHZhbHVlcykge1xuICAgICAgcmV0dXJuIHZhbHVlcy5sZW5ndGggPT09IDAgPyBkZWZhdWx0VmFsdWUgOiB2YWx1ZXMuYXQoLTEpIGFzIFQ7XG4gICAgfVxuICB9KTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVBLG1CQUFzQjtBQVNmLFNBQVMsb0JBQXVCLGNBQThCO0FBQ25FLFNBQU8sbUJBQU0sT0FBYTtBQUFBLElBQ3hCLFFBQVEsUUFBUTtBQUNkLGFBQU8sT0FBTyxXQUFXLElBQUksZUFBZSxPQUFPLEdBQUcsRUFBRTtBQUFBLElBQzFEO0FBQUEsRUFDRixDQUFDO0FBQ0g7IiwibmFtZXMiOltdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference path="../library-references.d.cts" />
|
|
2
|
+
/**
|
|
3
|
+
* @file
|
|
4
|
+
*
|
|
5
|
+
* Creates a CodeMirror {@link Facet} that carries a plugin's settings into its editor extensions.
|
|
6
|
+
*
|
|
7
|
+
* An extension reads the settings with `state.facet(settingsFacet)` instead of closing over a settings object, so a
|
|
8
|
+
* change reaches every editor as an ordinary reconfigure: `SettingsFacetComponent` swaps `settingsFacet.of(settings)`
|
|
9
|
+
* in a compartment, and every view plugin and state field sees the new value in the same update.
|
|
10
|
+
*/
|
|
11
|
+
import { Facet } from '@codemirror/state';
|
|
12
|
+
/**
|
|
13
|
+
* Creates a facet whose value is the last settings value provided, or the default when none is.
|
|
14
|
+
*
|
|
15
|
+
* @typeParam T - The settings type.
|
|
16
|
+
* @param defaultValue - The value an editor reads when no settings are provided.
|
|
17
|
+
* @returns The settings facet.
|
|
18
|
+
*/
|
|
19
|
+
export declare function createSettingsFacet<T>(defaultValue: T): Facet<T, T>;
|
|
@@ -106,6 +106,9 @@ __export(command_handlers_exports, {
|
|
|
106
106
|
"global-command-handler": () => global_command_handler,
|
|
107
107
|
"open-bug-report-command-handler": () => open_bug_report_command_handler,
|
|
108
108
|
"open-demo-vault-command-handler": () => open_demo_vault_command_handler,
|
|
109
|
+
"open-discussion-command-handler": () => open_discussion_command_handler,
|
|
110
|
+
"open-feature-request-command-handler": () => open_feature_request_command_handler,
|
|
111
|
+
"open-git-hub-command-handler": () => open_git_hub_command_handler,
|
|
109
112
|
"open-settings-command-handler": () => open_settings_command_handler,
|
|
110
113
|
"undo-bulk-operation-command-handler": () => undo_bulk_operation_command_handler,
|
|
111
114
|
"unlock-active-note-command-handler": () => unlock_active_note_command_handler
|
|
@@ -120,6 +123,9 @@ var folder_command_handler = __toESM(((module) => module && module.__esModule &&
|
|
|
120
123
|
var global_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./global-command-handler.cjs')), 1);
|
|
121
124
|
var open_bug_report_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-bug-report-command-handler.cjs')), 1);
|
|
122
125
|
var open_demo_vault_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-demo-vault-command-handler.cjs')), 1);
|
|
126
|
+
var open_discussion_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-discussion-command-handler.cjs')), 1);
|
|
127
|
+
var open_feature_request_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-feature-request-command-handler.cjs')), 1);
|
|
128
|
+
var open_git_hub_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-git-hub-command-handler.cjs')), 1);
|
|
123
129
|
var open_settings_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./open-settings-command-handler.cjs')), 1);
|
|
124
130
|
var undo_bulk_operation_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./undo-bulk-operation-command-handler.cjs')), 1);
|
|
125
131
|
var unlock_active_note_command_handler = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./unlock-active-note-command-handler.cjs')), 1);
|
|
@@ -134,8 +140,11 @@ var unlock_active_note_command_handler = __toESM(((module) => module && module._
|
|
|
134
140
|
"global-command-handler": null,
|
|
135
141
|
"open-bug-report-command-handler": null,
|
|
136
142
|
"open-demo-vault-command-handler": null,
|
|
143
|
+
"open-discussion-command-handler": null,
|
|
144
|
+
"open-feature-request-command-handler": null,
|
|
145
|
+
"open-git-hub-command-handler": null,
|
|
137
146
|
"open-settings-command-handler": null,
|
|
138
147
|
"undo-bulk-operation-command-handler": null,
|
|
139
148
|
"unlock-active-note-command-handler": null
|
|
140
149
|
});
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tYW5kLWhhbmRsZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIFRISVMgSVMgQSBHRU5FUkFURUQvQlVORExFRCBGSUxFIEJZIEJVSUxEIFNDUklQVCAqL1xuXG5leHBvcnQgKiBhcyAnYWJzdHJhY3QtZmlsZS1jb21tYW5kLWhhbmRsZXInIGZyb20gJy4vYWJzdHJhY3QtZmlsZS1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgJ2NvbW1hbmQtaGFuZGxlci1jb21wb25lbnQnIGZyb20gJy4vY29tbWFuZC1oYW5kbGVyLWNvbXBvbmVudC50cyc7XG5leHBvcnQgKiBhcyAnY29tbWFuZC1oYW5kbGVyJyBmcm9tICcuL2NvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgKiBhcyAnZWRpdG9yLWNvbW1hbmQtaGFuZGxlcicgZnJvbSAnLi9lZGl0b3ItY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCAqIGFzICdmaWxlLWNvbW1hbmQtaGFuZGxlcicgZnJvbSAnLi9maWxlLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgKiBhcyAnZm9sZGVyLWNvbW1hbmQtaGFuZGxlcicgZnJvbSAnLi9mb2xkZXItY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCAqIGFzICdnbG9iYWwtY29tbWFuZC1oYW5kbGVyJyBmcm9tICcuL2dsb2JhbC1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgJ29wZW4tYnVnLXJlcG9ydC1jb21tYW5kLWhhbmRsZXInIGZyb20gJy4vb3Blbi1idWctcmVwb3J0LWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgKiBhcyAnb3Blbi1kZW1vLXZhdWx0LWNvbW1hbmQtaGFuZGxlcicgZnJvbSAnLi9vcGVuLWRlbW8tdmF1bHQtY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCAqIGFzICdvcGVuLWRpc2N1c3Npb24tY29tbWFuZC1oYW5kbGVyJyBmcm9tICcuL29wZW4tZGlzY3Vzc2lvbi1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgJ29wZW4tZmVhdHVyZS1yZXF1ZXN0LWNvbW1hbmQtaGFuZGxlcicgZnJvbSAnLi9vcGVuLWZlYXR1cmUtcmVxdWVzdC1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgJ29wZW4tZ2l0LWh1Yi1jb21tYW5kLWhhbmRsZXInIGZyb20gJy4vb3Blbi1naXQtaHViLWNvbW1hbmQtaGFuZGxlci50cyc7XG5leHBvcnQgKiBhcyAnb3Blbi1zZXR0aW5ncy1jb21tYW5kLWhhbmRsZXInIGZyb20gJy4vb3Blbi1zZXR0aW5ncy1jb21tYW5kLWhhbmRsZXIudHMnO1xuZXhwb3J0ICogYXMgJ3VuZG8tYnVsay1vcGVyYXRpb24tY29tbWFuZC1oYW5kbGVyJyBmcm9tICcuL3VuZG8tYnVsay1vcGVyYXRpb24tY29tbWFuZC1oYW5kbGVyLnRzJztcbmV4cG9ydCAqIGFzICd1bmxvY2stYWN0aXZlLW5vdGUtY29tbWFuZC1oYW5kbGVyJyBmcm9tICcuL3VubG9jay1hY3RpdmUtbm90ZS1jb21tYW5kLWhhbmRsZXIudHMnO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBLHlDQUFBQTtBQUFBLEVBQUEseUJBQUFDO0FBQUEsRUFBQSxtQ0FBQUM7QUFBQSxFQUFBLGdDQUFBQztBQUFBLEVBQUEsOEJBQUFDO0FBQUEsRUFBQSxnQ0FBQUM7QUFBQSxFQUFBLGdDQUFBQztBQUFBLEVBQUEseUNBQUFDO0FBQUEsRUFBQSx5Q0FBQUM7QUFBQSxFQUFBLHlDQUFBQztBQUFBLEVBQUEsOENBQUFDO0FBQUEsRUFBQSxzQ0FBQUM7QUFBQSxFQUFBLHVDQUFBQztBQUFBLEVBQUEsNkNBQUFDO0FBQUEsRUFBQSw0Q0FBQUM7QUFBQTtBQUFBO0FBRUEsSUFBQWQsZ0NBQWlEO0FBQ2pELElBQUFFLDRCQUE2QztBQUM3QyxJQUFBRCxrQkFBbUM7QUFDbkMsSUFBQUUseUJBQTBDO0FBQzFDLElBQUFDLHVCQUF3QztBQUN4QyxJQUFBQyx5QkFBMEM7QUFDMUMsSUFBQUMseUJBQTBDO0FBQzFDLElBQUFDLGtDQUFtRDtBQUNuRCxJQUFBQyxrQ0FBbUQ7QUFDbkQsSUFBQUMsa0NBQW1EO0FBQ25ELElBQUFDLHVDQUF3RDtBQUN4RCxJQUFBQywrQkFBZ0Q7QUFDaEQsSUFBQUMsZ0NBQWlEO0FBQ2pELElBQUFDLHNDQUF1RDtBQUN2RCxJQUFBQyxxQ0FBc0Q7IiwibmFtZXMiOlsiYWJzdHJhY3QtZmlsZS1jb21tYW5kLWhhbmRsZXIiLCJjb21tYW5kLWhhbmRsZXIiLCJjb21tYW5kLWhhbmRsZXItY29tcG9uZW50IiwiZWRpdG9yLWNvbW1hbmQtaGFuZGxlciIsImZpbGUtY29tbWFuZC1oYW5kbGVyIiwiZm9sZGVyLWNvbW1hbmQtaGFuZGxlciIsImdsb2JhbC1jb21tYW5kLWhhbmRsZXIiLCJvcGVuLWJ1Zy1yZXBvcnQtY29tbWFuZC1oYW5kbGVyIiwib3Blbi1kZW1vLXZhdWx0LWNvbW1hbmQtaGFuZGxlciIsIm9wZW4tZGlzY3Vzc2lvbi1jb21tYW5kLWhhbmRsZXIiLCJvcGVuLWZlYXR1cmUtcmVxdWVzdC1jb21tYW5kLWhhbmRsZXIiLCJvcGVuLWdpdC1odWItY29tbWFuZC1oYW5kbGVyIiwib3Blbi1zZXR0aW5ncy1jb21tYW5kLWhhbmRsZXIiLCJ1bmRvLWJ1bGstb3BlcmF0aW9uLWNvbW1hbmQtaGFuZGxlciIsInVubG9jay1hY3RpdmUtbm90ZS1jb21tYW5kLWhhbmRsZXIiXX0=
|
|
@@ -8,6 +8,9 @@ export * as 'folder-command-handler' from './folder-command-handler.cjs';
|
|
|
8
8
|
export * as 'global-command-handler' from './global-command-handler.cjs';
|
|
9
9
|
export * as 'open-bug-report-command-handler' from './open-bug-report-command-handler.cjs';
|
|
10
10
|
export * as 'open-demo-vault-command-handler' from './open-demo-vault-command-handler.cjs';
|
|
11
|
+
export * as 'open-discussion-command-handler' from './open-discussion-command-handler.cjs';
|
|
12
|
+
export * as 'open-feature-request-command-handler' from './open-feature-request-command-handler.cjs';
|
|
13
|
+
export * as 'open-git-hub-command-handler' from './open-git-hub-command-handler.cjs';
|
|
11
14
|
export * as 'open-settings-command-handler' from './open-settings-command-handler.cjs';
|
|
12
15
|
export * as 'undo-bulk-operation-command-handler' from './undo-bulk-operation-command-handler.cjs';
|
|
13
16
|
export * as 'unlock-active-note-command-handler' from './unlock-active-note-command-handler.cjs';
|