@loopstack/loopstack-studio 0.25.2 → 0.26.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 (96) hide show
  1. package/dist/api/environments.js +4 -0
  2. package/dist/api/index.js +13 -9
  3. package/dist/app/EnvironmentEmbedRoot.js +29 -19
  4. package/dist/components/data-table/DataList.js +93 -91
  5. package/dist/components/data-table/DataTable.js +128 -126
  6. package/dist/components/feedback/Snackbar.js +1 -1
  7. package/dist/components/layout/StudioSidebar.js +124 -131
  8. package/dist/components/ui/sidebar.js +2 -2
  9. package/dist/components/ui/slider.js +37 -26
  10. package/dist/components/ui-widgets/widgets/SandboxRun.js +16 -14
  11. package/dist/features/code-explorer/components/CodeExplorerTree.js +1 -0
  12. package/dist/features/code-explorer/components/FileContentViewer.js +1 -1
  13. package/dist/features/dashboard/RunItem.js +39 -37
  14. package/dist/features/debug/lib/flow-utils.js +1 -1
  15. package/dist/features/documents/DocumentRenderer.js +59 -58
  16. package/dist/features/documents/renderers/useDocumentTransition.js +29 -24
  17. package/dist/features/feature-registry/FeatureRegistryProvider.js +17 -0
  18. package/dist/features/feature-registry/index.js +1 -0
  19. package/dist/features/file-explorer/api/files.js +7 -0
  20. package/dist/features/file-explorer/components/FileExplorerPanel.js +95 -0
  21. package/dist/features/{workbench/components/RemoteFileTabsBar.js → file-explorer/components/FileTabsBar.js} +4 -4
  22. package/dist/features/{workbench/components/RemoteFileTree.js → file-explorer/components/FileTree.js} +6 -6
  23. package/dist/features/file-explorer/file-explorer-feature.js +12 -0
  24. package/dist/features/file-explorer/hooks/useFileExplorer.js +44 -0
  25. package/dist/features/file-explorer/index.js +2 -0
  26. package/dist/features/file-explorer/providers/FileExplorerProvider.js +112 -0
  27. package/dist/features/oauth/OAuthPromptRenderer.js +162 -132
  28. package/dist/features/runs/Runs.js +1 -1
  29. package/dist/features/secrets/components/WorkbenchSecretsPanel.js +178 -0
  30. package/dist/features/secrets/index.js +1 -0
  31. package/dist/features/{documents → secrets}/renderers/SecretInputRenderer.js +17 -17
  32. package/dist/features/secrets/secrets-feature.js +14 -0
  33. package/dist/features/workbench/Workbench.js +32 -82
  34. package/dist/features/workbench/WorkflowList.js +109 -46
  35. package/dist/features/workbench/components/SidebarPanel.js +155 -0
  36. package/dist/features/workbench/components/WorkbenchEnvironmentPanel.js +82 -0
  37. package/dist/features/workbench/components/WorkbenchIconSidebar.js +128 -60
  38. package/dist/features/workbench/components/WorkbenchPreviewPanel.js +127 -114
  39. package/dist/features/workbench/components/WorkbenchRunsPanel.js +32 -0
  40. package/dist/features/workbench/components/WorkbenchSidebarShell.js +80 -0
  41. package/dist/features/workbench/hooks/useWorkflowData.js +3 -3
  42. package/dist/features/workbench/index.js +3 -2
  43. package/dist/features/workbench/providers/WorkbenchLayoutProvider.js +60 -62
  44. package/dist/features/workspaces/Workspaces.js +1 -1
  45. package/dist/features/workspaces/components/EnvironmentSlotSelector.js +68 -51
  46. package/dist/features/workspaces/components/WorkflowRunForm.js +1 -1
  47. package/dist/features/workspaces/components/WorkspaceHomePage.js +1 -1
  48. package/dist/hooks/useEnvironmentPreviewUrl.js +13 -0
  49. package/dist/hooks/useEnvironments.js +8 -0
  50. package/dist/hooks/useWorkflows.js +28 -26
  51. package/dist/hooks/useWorkspaces.js +28 -26
  52. package/dist/index.d.ts +98 -7
  53. package/dist/index.js +8 -1
  54. package/dist/loopstack-studio.css +1 -1
  55. package/dist/node_modules/@shikijs/core/dist/index.js +105 -643
  56. package/dist/node_modules/@shikijs/engine-oniguruma/dist/index.js +135 -122
  57. package/dist/node_modules/@shikijs/langs/dist/bird2.js +1 -1
  58. package/dist/node_modules/@shikijs/langs/dist/cobol.js +1 -1
  59. package/dist/node_modules/@shikijs/langs/dist/css.js +1 -1
  60. package/dist/node_modules/@shikijs/langs/dist/dart.js +1 -1
  61. package/dist/node_modules/@shikijs/langs/dist/emacs-lisp.js +1 -1
  62. package/dist/node_modules/@shikijs/langs/dist/es-tag-sql.js +1 -1
  63. package/dist/node_modules/@shikijs/langs/dist/go.js +1 -1
  64. package/dist/node_modules/@shikijs/langs/dist/kusto.js +1 -1
  65. package/dist/node_modules/@shikijs/langs/dist/nextflow-groovy.js +1 -1
  66. package/dist/node_modules/@shikijs/langs/dist/php.js +1 -1
  67. package/dist/node_modules/@shikijs/langs/dist/ruby.js +1 -1
  68. package/dist/node_modules/@shikijs/langs/dist/typespec.js +1 -1
  69. package/dist/node_modules/@shikijs/primitive/dist/index.js +538 -0
  70. package/dist/node_modules/@shikijs/themes/dist/horizon-bright.js +1 -1
  71. package/dist/node_modules/@xyflow/react/dist/esm/index.js +1 -1
  72. package/dist/node_modules/shiki/dist/bundle-full.js +6 -5
  73. package/dist/node_modules/shiki/dist/chunk-CtajNgzt.js +15 -0
  74. package/dist/node_modules/shiki/dist/engine-oniguruma.js +5 -0
  75. package/dist/node_modules/shiki/dist/{langs.js → langs-bundle-full-DfKZStlK.js} +1 -1
  76. package/dist/node_modules/shiki/dist/themes.js +1 -1
  77. package/dist/pages/DashboardPage.js +54 -79
  78. package/dist/pages/DebugWorkflowDetailsPage.js +41 -55
  79. package/dist/pages/DebugWorkflowsPage.js +151 -112
  80. package/dist/pages/EmbedWorkbenchPage.js +2 -1
  81. package/dist/pages/PreviewWorkbenchPage.js +77 -59
  82. package/dist/pages/RunsListPage.js +27 -41
  83. package/dist/pages/RunsPage.js +21 -36
  84. package/dist/pages/WorkbenchPage.js +48 -70
  85. package/dist/pages/WorkflowDebugPage.js +65 -79
  86. package/dist/pages/WorkspacePage.js +59 -86
  87. package/dist/pages/WorkspaceRunsPage.js +59 -54
  88. package/dist/pages/WorkspacesPage.js +11 -27
  89. package/dist/providers/StudioPreferencesProvider.js +54 -0
  90. package/package.json +29 -29
  91. package/dist/features/workbench/components/WorkbenchFilesPanel.js +0 -67
  92. package/dist/features/workbench/components/WorkbenchFloatingPanel.js +0 -57
  93. package/dist/features/workbench/components/WorkbenchFlowPanel.js +0 -47
  94. package/dist/features/workbench/components/WorkbenchSecretsPanel.js +0 -182
  95. package/dist/features/workbench/providers/RemoteFileExplorerProvider.js +0 -160
  96. /package/dist/{node_modules → frontend/studio/node_modules}/@dagrejs/dagre/dist/dagre.esm.js +0 -0
@@ -0,0 +1,538 @@
1
+ import { ShikiError } from "../../types/dist/index.js";
2
+ import { EncodedTokenMetadata, INITIAL, Registry, Theme } from "../../vscode-textmate/dist/index.js";
3
+ function resolveColorReplacements(e, x) {
4
+ let S = typeof e == "string" ? {} : { ...e.colorReplacements }, C = typeof e == "string" ? e : e.name;
5
+ for (let [e, w] of Object.entries(x?.colorReplacements || {})) typeof w == "string" ? S[e] = w : e === C && Object.assign(S, w);
6
+ return S;
7
+ }
8
+ function applyColorReplacements(e, x) {
9
+ return e && (x?.[e?.toLowerCase()] || e);
10
+ }
11
+ function toArray(e) {
12
+ return Array.isArray(e) ? e : [e];
13
+ }
14
+ async function normalizeGetter(e) {
15
+ return Promise.resolve(typeof e == "function" ? e() : e).then((e) => e.default || e);
16
+ }
17
+ function isPlainLang(e) {
18
+ return !e || [
19
+ "plaintext",
20
+ "txt",
21
+ "text",
22
+ "plain"
23
+ ].includes(e);
24
+ }
25
+ function isSpecialLang(e) {
26
+ return e === "ansi" || isPlainLang(e);
27
+ }
28
+ function isNoneTheme(e) {
29
+ return e === "none";
30
+ }
31
+ function isSpecialTheme(e) {
32
+ return isNoneTheme(e);
33
+ }
34
+ function splitLines(e, x = !1) {
35
+ if (e.length === 0) return [["", 0]];
36
+ let S = e.split(/(\r?\n)/g), C = 0, w = [];
37
+ for (let e = 0; e < S.length; e += 2) {
38
+ let T = x ? S[e] + (S[e + 1] || "") : S[e];
39
+ w.push([T, C]), C += S[e].length, C += S[e + 1]?.length || 0;
40
+ }
41
+ return w;
42
+ }
43
+ var VSCODE_FALLBACK_EDITOR_FG = {
44
+ light: "#333333",
45
+ dark: "#bbbbbb"
46
+ }, VSCODE_FALLBACK_EDITOR_BG = {
47
+ light: "#fffffe",
48
+ dark: "#1e1e1e"
49
+ }, RESOLVED_KEY = "__shiki_resolved";
50
+ function normalizeTheme(e) {
51
+ if (e?.[RESOLVED_KEY]) return e;
52
+ let x = { ...e };
53
+ x.tokenColors && !x.settings && (x.settings = x.tokenColors, delete x.tokenColors), x.type ||= "dark", x.colorReplacements = { ...x.colorReplacements }, x.settings ||= [];
54
+ let { bg: S, fg: C } = x;
55
+ if (!S || !C) {
56
+ let e = x.settings ? x.settings.find((e) => !e.name && !e.scope) : void 0;
57
+ e?.settings?.foreground && (C = e.settings.foreground), e?.settings?.background && (S = e.settings.background), !C && x?.colors?.["editor.foreground"] && (C = x.colors["editor.foreground"]), !S && x?.colors?.["editor.background"] && (S = x.colors["editor.background"]), C ||= x.type === "light" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark, S ||= x.type === "light" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark, x.fg = C, x.bg = S;
58
+ }
59
+ x.settings[0] && x.settings[0].settings && !x.settings[0].scope || x.settings.unshift({ settings: {
60
+ foreground: x.fg,
61
+ background: x.bg
62
+ } });
63
+ let w = 0, T = /* @__PURE__ */ new Map();
64
+ function E(e) {
65
+ if (T.has(e)) return T.get(e);
66
+ w += 1;
67
+ let S = `#${w.toString(16).padStart(8, "0").toLowerCase()}`;
68
+ return x.colorReplacements?.[`#${S}`] ? E(e) : (T.set(e, S), S);
69
+ }
70
+ x.settings = x.settings.map((e) => {
71
+ let S = e.settings?.foreground && !e.settings.foreground.startsWith("#"), C = e.settings?.background && !e.settings.background.startsWith("#");
72
+ if (!S && !C) return e;
73
+ let w = {
74
+ ...e,
75
+ settings: { ...e.settings }
76
+ };
77
+ if (S) {
78
+ let S = E(e.settings.foreground);
79
+ x.colorReplacements[S] = e.settings.foreground, w.settings.foreground = S;
80
+ }
81
+ if (C) {
82
+ let S = E(e.settings.background);
83
+ x.colorReplacements[S] = e.settings.background, w.settings.background = S;
84
+ }
85
+ return w;
86
+ });
87
+ for (let e of Object.keys(x.colors || {})) if ((e === "editor.foreground" || e === "editor.background" || e.startsWith("terminal.ansi")) && !x.colors[e]?.startsWith("#")) {
88
+ let S = E(x.colors[e]);
89
+ x.colorReplacements[S] = x.colors[e], x.colors[e] = S;
90
+ }
91
+ return Object.defineProperty(x, RESOLVED_KEY, {
92
+ enumerable: !1,
93
+ writable: !1,
94
+ value: !0
95
+ }), x;
96
+ }
97
+ async function resolveLangs(e) {
98
+ return Array.from(new Set((await Promise.all(e.filter((e) => !isSpecialLang(e)).map(async (e) => await normalizeGetter(e).then((e) => Array.isArray(e) ? e : [e])))).flat()));
99
+ }
100
+ async function resolveThemes(e) {
101
+ return (await Promise.all(e.map(async (e) => isSpecialTheme(e) ? null : normalizeTheme(await normalizeGetter(e))))).filter((e) => !!e);
102
+ }
103
+ function resolveLangAlias(x, S) {
104
+ if (!S) return x;
105
+ if (S[x]) {
106
+ let C = new Set([x]);
107
+ for (; S[x];) {
108
+ if (x = S[x], C.has(x)) throw new ShikiError(`Circular alias \`${Array.from(C).join(" -> ")} -> ${x}\``);
109
+ C.add(x);
110
+ }
111
+ }
112
+ return x;
113
+ }
114
+ var Registry$1 = class extends Registry {
115
+ _resolvedThemes = /* @__PURE__ */ new Map();
116
+ _resolvedGrammars = /* @__PURE__ */ new Map();
117
+ _langMap = /* @__PURE__ */ new Map();
118
+ _langGraph = /* @__PURE__ */ new Map();
119
+ _textmateThemeCache = /* @__PURE__ */ new WeakMap();
120
+ _loadedThemesCache = null;
121
+ _loadedLanguagesCache = null;
122
+ constructor(e, x, S, C = {}) {
123
+ super(e), this._resolver = e, this._themes = x, this._langs = S, this._alias = C, this._themes.map((e) => this.loadTheme(e)), this.loadLanguages(this._langs);
124
+ }
125
+ getTheme(e) {
126
+ return typeof e == "string" ? this._resolvedThemes.get(e) : this.loadTheme(e);
127
+ }
128
+ loadTheme(e) {
129
+ let x = normalizeTheme(e);
130
+ return x.name && (this._resolvedThemes.set(x.name, x), this._loadedThemesCache = null), x;
131
+ }
132
+ getLoadedThemes() {
133
+ return this._loadedThemesCache ||= [...this._resolvedThemes.keys()], this._loadedThemesCache;
134
+ }
135
+ setTheme(e) {
136
+ let x = this._textmateThemeCache.get(e);
137
+ x || (x = Theme.createFromRawTheme(e), this._textmateThemeCache.set(e, x)), this._syncRegistry.setTheme(x);
138
+ }
139
+ getGrammar(e) {
140
+ return e = resolveLangAlias(e, this._alias), this._resolvedGrammars.get(e);
141
+ }
142
+ loadLanguage(e) {
143
+ if (this.getGrammar(e.name)) return;
144
+ let x = new Set([...this._langMap.values()].filter((x) => x.embeddedLangsLazy?.includes(e.name)));
145
+ this._resolver.addLanguage(e);
146
+ let S = {
147
+ balancedBracketSelectors: e.balancedBracketSelectors || ["*"],
148
+ unbalancedBracketSelectors: e.unbalancedBracketSelectors || []
149
+ };
150
+ this._syncRegistry._rawGrammars.set(e.scopeName, e);
151
+ let C = this.loadGrammarWithConfiguration(e.scopeName, 1, S);
152
+ if (C.name = e.name, this._resolvedGrammars.set(e.name, C), e.aliases && e.aliases.forEach((x) => {
153
+ this._alias[x] = e.name;
154
+ }), this._loadedLanguagesCache = null, x.size) for (let e of x) this._resolvedGrammars.delete(e.name), this._loadedLanguagesCache = null, this._syncRegistry?._injectionGrammars?.delete(e.scopeName), this._syncRegistry?._grammars?.delete(e.scopeName), this.loadLanguage(this._langMap.get(e.name));
155
+ }
156
+ dispose() {
157
+ super.dispose(), this._resolvedThemes.clear(), this._resolvedGrammars.clear(), this._langMap.clear(), this._langGraph.clear(), this._loadedThemesCache = null;
158
+ }
159
+ loadLanguages(x) {
160
+ for (let e of x) this.resolveEmbeddedLanguages(e);
161
+ let S = Array.from(this._langGraph.entries()), C = S.filter(([e, x]) => !x);
162
+ if (C.length) {
163
+ let x = S.filter(([e, x]) => x ? (x.embeddedLanguages || x.embeddedLangs)?.some((e) => C.map(([e]) => e).includes(e)) : !1).filter((e) => !C.includes(e));
164
+ throw new ShikiError(`Missing languages ${C.map(([e]) => `\`${e}\``).join(", ")}, required by ${x.map(([e]) => `\`${e}\``).join(", ")}`);
165
+ }
166
+ for (let [e, x] of S) this._resolver.addLanguage(x);
167
+ for (let [e, x] of S) this.loadLanguage(x);
168
+ }
169
+ getLoadedLanguages() {
170
+ return this._loadedLanguagesCache ||= [...new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])], this._loadedLanguagesCache;
171
+ }
172
+ resolveEmbeddedLanguages(e) {
173
+ this._langMap.set(e.name, e), this._langGraph.set(e.name, e);
174
+ let x = e.embeddedLanguages ?? e.embeddedLangs;
175
+ if (x) for (let e of x) this._langGraph.set(e, this._langMap.get(e));
176
+ }
177
+ }, Resolver = class {
178
+ _langs = /* @__PURE__ */ new Map();
179
+ _scopeToLang = /* @__PURE__ */ new Map();
180
+ _injections = /* @__PURE__ */ new Map();
181
+ _onigLib;
182
+ constructor(e, x) {
183
+ this._onigLib = {
184
+ createOnigScanner: (x) => e.createScanner(x),
185
+ createOnigString: (x) => e.createString(x)
186
+ }, x.forEach((e) => this.addLanguage(e));
187
+ }
188
+ get onigLib() {
189
+ return this._onigLib;
190
+ }
191
+ getLangRegistration(e) {
192
+ return this._langs.get(e);
193
+ }
194
+ loadGrammar(e) {
195
+ return this._scopeToLang.get(e);
196
+ }
197
+ addLanguage(e) {
198
+ this._langs.set(e.name, e), e.aliases && e.aliases.forEach((x) => {
199
+ this._langs.set(x, e);
200
+ }), this._scopeToLang.set(e.scopeName, e), e.injectTo && e.injectTo.forEach((x) => {
201
+ this._injections.get(x) || this._injections.set(x, []), this._injections.get(x).push(e.scopeName);
202
+ });
203
+ }
204
+ getInjections(e) {
205
+ let x = e.split("."), S = [];
206
+ for (let e = 1; e <= x.length; e++) {
207
+ let C = x.slice(0, e).join(".");
208
+ S = [...S, ...this._injections.get(C) || []];
209
+ }
210
+ return S;
211
+ }
212
+ }, instancesCount = 0;
213
+ function createShikiPrimitive(x) {
214
+ instancesCount += 1, x.warnings !== !1 && instancesCount >= 10 && instancesCount % 10 == 0 && console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);
215
+ let S = !1;
216
+ if (!x.engine) throw new ShikiError("`engine` option is required for synchronous mode");
217
+ let C = (x.langs || []).flat(1), w = (x.themes || []).flat(1).map(normalizeTheme), T = new Registry$1(new Resolver(x.engine, C), w, C, x.langAlias), E;
218
+ function D(e) {
219
+ return resolveLangAlias(e, x.langAlias);
220
+ }
221
+ function O(x) {
222
+ V();
223
+ let S = T.getGrammar(typeof x == "string" ? x : x.name);
224
+ if (!S) throw new ShikiError(`Language \`${x}\` not found, you may need to load it first`);
225
+ return S;
226
+ }
227
+ function k(x) {
228
+ if (x === "none") return {
229
+ bg: "",
230
+ fg: "",
231
+ name: "none",
232
+ settings: [],
233
+ type: "dark"
234
+ };
235
+ V();
236
+ let S = T.getTheme(x);
237
+ if (!S) throw new ShikiError(`Theme \`${x}\` not found, you may need to load it first`);
238
+ return S;
239
+ }
240
+ function A(e) {
241
+ V();
242
+ let x = k(e);
243
+ return E !== e && (T.setTheme(x), E = e), {
244
+ theme: x,
245
+ colorMap: T.getColorMap()
246
+ };
247
+ }
248
+ function j() {
249
+ return V(), T.getLoadedThemes();
250
+ }
251
+ function M() {
252
+ return V(), T.getLoadedLanguages();
253
+ }
254
+ function N(...e) {
255
+ V(), T.loadLanguages(e.flat(1));
256
+ }
257
+ async function P(...e) {
258
+ return N(await resolveLangs(e));
259
+ }
260
+ function F(...e) {
261
+ V();
262
+ for (let x of e.flat(1)) T.loadTheme(x);
263
+ }
264
+ async function I(...e) {
265
+ return V(), F(await resolveThemes(e));
266
+ }
267
+ function V() {
268
+ if (S) throw new ShikiError("Shiki instance has been disposed");
269
+ }
270
+ function H() {
271
+ S || (S = !0, T.dispose(), --instancesCount);
272
+ }
273
+ return {
274
+ setTheme: A,
275
+ getTheme: k,
276
+ getLanguage: O,
277
+ getLoadedThemes: j,
278
+ getLoadedLanguages: M,
279
+ resolveLangAlias: D,
280
+ loadLanguage: P,
281
+ loadLanguageSync: N,
282
+ loadTheme: I,
283
+ loadThemeSync: F,
284
+ dispose: H,
285
+ [Symbol.dispose]: H
286
+ };
287
+ }
288
+ async function createShikiPrimitiveAsync(e) {
289
+ e.engine || console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");
290
+ let [x, S, C] = await Promise.all([
291
+ resolveThemes(e.themes || []),
292
+ resolveLangs(e.langs || []),
293
+ e.engine
294
+ ]);
295
+ return createShikiPrimitive({
296
+ ...e,
297
+ themes: x,
298
+ langs: S,
299
+ engine: C
300
+ });
301
+ }
302
+ var _grammarStateMap = /* @__PURE__ */ new WeakMap();
303
+ function setLastGrammarStateToMap(e, x) {
304
+ _grammarStateMap.set(e, x);
305
+ }
306
+ function getLastGrammarStateFromMap(e) {
307
+ return _grammarStateMap.get(e);
308
+ }
309
+ var GrammarState = class e {
310
+ _stacks = {};
311
+ lang;
312
+ get themes() {
313
+ return Object.keys(this._stacks);
314
+ }
315
+ get theme() {
316
+ return this.themes[0];
317
+ }
318
+ get _stack() {
319
+ return this._stacks[this.theme];
320
+ }
321
+ static initial(x, C) {
322
+ return new e(Object.fromEntries(toArray(C).map((e) => [e, INITIAL])), x);
323
+ }
324
+ constructor(...e) {
325
+ if (e.length === 2) {
326
+ let [x, S] = e;
327
+ this.lang = S, this._stacks = x;
328
+ } else {
329
+ let [x, S, C] = e;
330
+ this.lang = S, this._stacks = { [C]: x };
331
+ }
332
+ }
333
+ getInternalStack(e = this.theme) {
334
+ return this._stacks[e];
335
+ }
336
+ getScopes(e = this.theme) {
337
+ return getScopes(this._stacks[e]);
338
+ }
339
+ toJSON() {
340
+ return {
341
+ lang: this.lang,
342
+ theme: this.theme,
343
+ themes: this.themes,
344
+ scopes: this.getScopes()
345
+ };
346
+ }
347
+ };
348
+ function getScopes(e) {
349
+ let x = [], S = /* @__PURE__ */ new Set();
350
+ function C(e) {
351
+ if (S.has(e)) return;
352
+ S.add(e);
353
+ let w = e?.nameScopesList?.scopeName;
354
+ w && x.push(w), e.parent && C(e.parent);
355
+ }
356
+ return C(e), x;
357
+ }
358
+ function getGrammarStack(x, S) {
359
+ if (!(x instanceof GrammarState)) throw new ShikiError("Invalid grammar state");
360
+ return x.getInternalStack(S);
361
+ }
362
+ function codeToTokensBase(x, S, C = {}) {
363
+ let { theme: w = x.getLoadedThemes()[0] } = C;
364
+ if (isPlainLang(x.resolveLangAlias(C.lang || "text")) || isNoneTheme(w)) return splitLines(S).map((e) => [{
365
+ content: e[0],
366
+ offset: e[1]
367
+ }]);
368
+ let { theme: T, colorMap: E } = x.setTheme(w), D = x.getLanguage(C.lang || "text");
369
+ if (C.grammarState) {
370
+ if (C.grammarState.lang !== D.name) throw new ShikiError(`Grammar state language "${C.grammarState.lang}" does not match highlight language "${D.name}"`);
371
+ if (!C.grammarState.themes.includes(T.name)) throw new ShikiError(`Grammar state themes "${C.grammarState.themes}" do not contain highlight theme "${T.name}"`);
372
+ }
373
+ return tokenizeWithTheme(S, D, T, E, C);
374
+ }
375
+ function getLastGrammarState(...x) {
376
+ if (x.length === 2) return getLastGrammarStateFromMap(x[1]);
377
+ let [S, C, w = {}] = x, { lang: T = "text", theme: E = S.getLoadedThemes()[0] } = w;
378
+ if (isPlainLang(T) || isNoneTheme(E)) throw new ShikiError("Plain language does not have grammar state");
379
+ if (T === "ansi") throw new ShikiError("ANSI language does not have grammar state");
380
+ let { theme: D, colorMap: O } = S.setTheme(E), A = S.getLanguage(T);
381
+ return new GrammarState(_tokenizeWithTheme(C, A, D, O, w).stateStack, A.name, D.name);
382
+ }
383
+ function tokenizeWithTheme(e, x, S, C, w) {
384
+ let T = _tokenizeWithTheme(e, x, S, C, w), E = new GrammarState(T.stateStack, x.name, S.name);
385
+ return setLastGrammarStateToMap(T.tokens, E), T.tokens;
386
+ }
387
+ function _tokenizeWithTheme(e, C, w, D, O) {
388
+ let k = resolveColorReplacements(w, O), { tokenizeMaxLineLength: A = 0, tokenizeTimeLimit: j = 500 } = O, M = splitLines(e), P = O.grammarState ? getGrammarStack(O.grammarState, w.name) ?? INITIAL : O.grammarContextCode == null ? INITIAL : _tokenizeWithTheme(O.grammarContextCode, C, w, D, {
389
+ ...O,
390
+ grammarState: void 0,
391
+ grammarContextCode: void 0
392
+ }).stateStack, F = [], I = [];
393
+ for (let e = 0, S = M.length; e < S; e++) {
394
+ let [S, T] = M[e];
395
+ if (S === "") {
396
+ F = [], I.push([]);
397
+ continue;
398
+ }
399
+ if (A > 0 && S.length >= A) {
400
+ F = [], I.push([{
401
+ content: S,
402
+ offset: T,
403
+ color: "",
404
+ fontStyle: 0
405
+ }]);
406
+ continue;
407
+ }
408
+ let N, L, R;
409
+ O.includeExplanation && (N = C.tokenizeLine(S, P, j), L = N.tokens, R = 0);
410
+ let z = C.tokenizeLine2(S, P, j), B = z.tokens.length / 2;
411
+ for (let e = 0; e < B; e++) {
412
+ let C = z.tokens[2 * e], A = e + 1 < B ? z.tokens[2 * e + 2] : S.length;
413
+ if (C === A) continue;
414
+ let j = z.tokens[2 * e + 1], M = applyColorReplacements(D[EncodedTokenMetadata.getForeground(j)], k), N = EncodedTokenMetadata.getFontStyle(j), P = {
415
+ content: S.substring(C, A),
416
+ offset: T + C,
417
+ color: M,
418
+ fontStyle: N
419
+ };
420
+ if (O.includeExplanation) {
421
+ let e = [];
422
+ if (O.includeExplanation !== "scopeName") for (let x of w.settings) {
423
+ let S;
424
+ switch (typeof x.scope) {
425
+ case "string":
426
+ S = x.scope.split(/,/).map((e) => e.trim());
427
+ break;
428
+ case "object":
429
+ S = x.scope;
430
+ break;
431
+ default: continue;
432
+ }
433
+ e.push({
434
+ settings: x,
435
+ selectors: S.map((e) => e.split(/ /))
436
+ });
437
+ }
438
+ P.explanation = [];
439
+ let x = 0;
440
+ for (; C + x < A;) {
441
+ let C = L[R], w = S.substring(C.startIndex, C.endIndex);
442
+ x += w.length, P.explanation.push({
443
+ content: w,
444
+ scopes: O.includeExplanation === "scopeName" ? explainThemeScopesNameOnly(C.scopes) : explainThemeScopesFull(e, C.scopes)
445
+ }), R += 1;
446
+ }
447
+ }
448
+ F.push(P);
449
+ }
450
+ I.push(F), F = [], P = z.ruleStack;
451
+ }
452
+ return {
453
+ tokens: I,
454
+ stateStack: P
455
+ };
456
+ }
457
+ function explainThemeScopesNameOnly(e) {
458
+ return e.map((e) => ({ scopeName: e }));
459
+ }
460
+ function explainThemeScopesFull(e, x) {
461
+ let S = [];
462
+ for (let C = 0, w = x.length; C < w; C++) {
463
+ let w = x[C];
464
+ S[C] = {
465
+ scopeName: w,
466
+ themeMatches: explainThemeScope(e, w, x.slice(0, C))
467
+ };
468
+ }
469
+ return S;
470
+ }
471
+ function matchesOne(e, x) {
472
+ return e === x || x.substring(0, e.length) === e && x[e.length] === ".";
473
+ }
474
+ function matches(e, x, S) {
475
+ if (!matchesOne(e[e.length - 1], x)) return !1;
476
+ let C = e.length - 2, w = S.length - 1;
477
+ for (; C >= 0 && w >= 0;) matchesOne(e[C], S[w]) && --C, --w;
478
+ return C === -1;
479
+ }
480
+ function explainThemeScope(e, x, S) {
481
+ let C = [];
482
+ for (let { selectors: w, settings: T } of e) for (let e of w) if (matches(e, x, S)) {
483
+ C.push(T);
484
+ break;
485
+ }
486
+ return C;
487
+ }
488
+ function codeToTokensWithThemes(e, x, S, C = codeToTokensBase) {
489
+ let w = Object.entries(S.themes).filter((e) => e[1]).map((e) => ({
490
+ color: e[0],
491
+ theme: e[1]
492
+ })), T = w.map((w) => {
493
+ let T = C(e, x, {
494
+ ...S,
495
+ theme: w.theme
496
+ });
497
+ return {
498
+ tokens: T,
499
+ state: getLastGrammarStateFromMap(T),
500
+ theme: typeof w.theme == "string" ? w.theme : w.theme.name
501
+ };
502
+ }), E = alignThemesTokenization(...T.map((e) => e.tokens)), D = E[0].map((e, x) => e.map((e, C) => {
503
+ let T = {
504
+ content: e.content,
505
+ variants: {},
506
+ offset: e.offset
507
+ };
508
+ return "includeExplanation" in S && S.includeExplanation && (T.explanation = e.explanation), E.forEach((e, S) => {
509
+ let { content: E, explanation: D, offset: O, ...k } = e[x][C];
510
+ T.variants[w[S].color] = k;
511
+ }), T;
512
+ })), O = T[0].state ? new GrammarState(Object.fromEntries(T.map((e) => [e.theme, e.state?.getInternalStack(e.theme)])), T[0].state.lang) : void 0;
513
+ return O && setLastGrammarStateToMap(D, O), D;
514
+ }
515
+ function alignThemesTokenization(...e) {
516
+ let x = e.map(() => []), S = e.length;
517
+ for (let C = 0; C < e[0].length; C++) {
518
+ let w = e.map((e) => e[C]), T = x.map(() => []);
519
+ x.forEach((e, x) => e.push(T[x]));
520
+ let E = w.map(() => 0), D = w.map((e) => e[0]);
521
+ for (; D.every((e) => e);) {
522
+ let e = Math.min(...D.map((e) => e.content.length));
523
+ for (let x = 0; x < S; x++) {
524
+ let S = D[x];
525
+ S.content.length === e ? (T[x].push(S), E[x] += 1, D[x] = w[x][E[x]]) : (T[x].push({
526
+ ...S,
527
+ content: S.content.slice(0, e)
528
+ }), D[x] = {
529
+ ...S,
530
+ content: S.content.slice(e),
531
+ offset: S.offset + e
532
+ });
533
+ }
534
+ }
535
+ }
536
+ return x;
537
+ }
538
+ export { applyColorReplacements, codeToTokensBase, codeToTokensWithThemes, createShikiPrimitive, createShikiPrimitiveAsync, getLastGrammarState, getLastGrammarStateFromMap, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, normalizeGetter, normalizeTheme, resolveColorReplacements, setLastGrammarStateToMap, splitLines, toArray, tokenizeWithTheme };
@@ -1,2 +1,2 @@
1
- var horizon_bright_default = Object.freeze(JSON.parse("{\"colors\":{\"activityBar.background\":\"#FDF0ED\",\"activityBar.dropBackground\":\"#F9CEC380\",\"activityBar.foreground\":\"#06060CE6\",\"activityBarBadge.background\":\"#E84A72\",\"activityBarBadge.foreground\":\"#06060C\",\"badge.background\":\"#F9CBBE\",\"badge.foreground\":\"#06060C\",\"breadcrumbPicker.background\":\"#FADAD1\",\"button.background\":\"#F9CBBE\",\"button.foreground\":\"#06060C\",\"debugToolBar.background\":\"#FDF0ED\",\"diffEditor.insertedTextBackground\":\"#07DA8C1A\",\"diffEditor.removedTextBackground\":\"#F43E5C1A\",\"dropdown.background\":\"#FADAD1\",\"dropdown.listBackground\":\"#F9CBBE\",\"editor.background\":\"#FDF0ED\",\"editor.findMatchBackground\":\"#F9CEC380\",\"editor.findMatchHighlightBackground\":\"#F9CEC34D\",\"editor.findRangeHighlightBackground\":\"#F9CEC31A\",\"editor.hoverHighlightBackground\":\"#F9CEC34D\",\"editor.lineHighlightBackground\":\"#F9CBBE4D\",\"editor.rangeHighlightBackground\":\"#F9CBBE80\",\"editor.selectionBackground\":\"#F9CBBE80\",\"editor.selectionHighlightBackground\":\"#F9CEC380\",\"editor.wordHighlightBackground\":\"#F9CEC380\",\"editor.wordHighlightStrongBackground\":\"#F9CEC380\",\"editorBracketMatch.background\":\"#F9CEC380\",\"editorBracketMatch.border\":\"#F9CEC300\",\"editorCodeLens.foreground\":\"#F9CEC380\",\"editorCursor.background\":\"#FDF0ED\",\"editorCursor.foreground\":\"#E84A72\",\"editorError.foreground\":\"#F43E5C\",\"editorGroup.border\":\"#1A1C231A\",\"editorGroup.dropBackground\":\"#F9CEC34D\",\"editorGroupHeader.tabsBackground\":\"#FDF0ED\",\"editorGutter.addedBackground\":\"#07DA8CB3\",\"editorGutter.deletedBackground\":\"#F43E5CB3\",\"editorGutter.modifiedBackground\":\"#1EAEAEB3\",\"editorIndentGuide.activeBackground\":\"#F9CBBE\",\"editorIndentGuide.background\":\"#F9CBBE80\",\"editorLineNumber.activeForeground\":\"#06060C80\",\"editorLineNumber.foreground\":\"#06060C1A\",\"editorOverviewRuler.addedForeground\":\"#07DA8CB3\",\"editorOverviewRuler.border\":\"#F9CBBE1A\",\"editorOverviewRuler.bracketMatchForeground\":\"#06060CB3\",\"editorOverviewRuler.deletedForeground\":\"#F43E5CB3\",\"editorOverviewRuler.errorForeground\":\"#F43E5CE6\",\"editorOverviewRuler.findMatchForeground\":\"#F9CEC3\",\"editorOverviewRuler.modifiedForeground\":\"#1EAEAEB3\",\"editorOverviewRuler.warningForeground\":\"#1EB980B3\",\"editorRuler.foreground\":\"#F9CEC34D\",\"editorSuggestWidget.highlightForeground\":\"#E84A72\",\"editorUnnecessaryCode.opacity\":\"#000000B3\",\"editorWarning.foreground\":\"#1EB980B3\",\"editorWidget.background\":\"#FADAD1\",\"editorWidget.border\":\"#FADAD1\",\"errorForeground\":\"#F43E5C\",\"extensionButton.prominentBackground\":\"#E84A72\",\"extensionButton.prominentHoverBackground\":\"#E73665\",\"focusBorder\":\"#1A1C231A\",\"foreground\":\"#06060C\",\"gitDecoration.addedResourceForeground\":\"#1EB980B3\",\"gitDecoration.deletedResourceForeground\":\"#F43E5C\",\"gitDecoration.ignoredResourceForeground\":\"#06060C4D\",\"gitDecoration.modifiedResourceForeground\":\"#AF5427\",\"gitDecoration.untrackedResourceForeground\":\"#1EB980\",\"input.background\":\"#F9CBBE\",\"inputOption.activeBorder\":\"#E7366580\",\"inputValidation.errorBackground\":\"#F43E5C80\",\"inputValidation.errorBorder\":\"#F43E5C00\",\"list.activeSelectionBackground\":\"#F9CBBE80\",\"list.activeSelectionForeground\":\"#06060C\",\"list.dropBackground\":\"#F9CEC380\",\"list.errorForeground\":\"#F43E5CE6\",\"list.focusBackground\":\"#F9CBBE80\",\"list.focusForeground\":\"#06060C\",\"list.highlightForeground\":\"#E84A72\",\"list.hoverBackground\":\"#F9CBBE80\",\"list.hoverForeground\":\"#06060C\",\"list.inactiveFocusBackground\":\"#F9CBBE80\",\"list.inactiveSelectionBackground\":\"#F9CBBE4D\",\"list.inactiveSelectionForeground\":\"#06060C\",\"list.warningForeground\":\"#1EB980B3\",\"panelTitle.activeBorder\":\"#E84A72\",\"peekView.border\":\"#1A1C231A\",\"peekViewEditor.background\":\"#FADAD1\",\"peekViewEditor.matchHighlightBackground\":\"#F9CEC380\",\"peekViewResult.background\":\"#FADAD1\",\"peekViewResult.matchHighlightBackground\":\"#F9CEC380\",\"peekViewResult.selectionBackground\":\"#F9CBBE80\",\"peekViewTitle.background\":\"#FADAD1\",\"pickerGroup.foreground\":\"#E84A72E6\",\"progressBar.background\":\"#E84A72\",\"scrollbar.shadow\":\"#16161C4D\",\"scrollbarSlider.activeBackground\":\"#F9CEC3E6\",\"scrollbarSlider.background\":\"#F9CEC380\",\"scrollbarSlider.hoverBackground\":\"#F9CEC3B3\",\"selection.background\":\"#AF542780\",\"sideBar.background\":\"#FDF0ED\",\"sideBar.dropBackground\":\"#F9CEC34D\",\"sideBar.foreground\":\"#06060CB3\",\"sideBarSectionHeader.background\":\"#FDF0ED\",\"sideBarSectionHeader.foreground\":\"#06060CB3\",\"statusBar.background\":\"#FDF0ED\",\"statusBar.debuggingBackground\":\"#AF5427\",\"statusBar.debuggingForeground\":\"#06060C\",\"statusBar.foreground\":\"#06060CB3\",\"statusBar.noFolderBackground\":\"#FDF0ED\",\"statusBarItem.hoverBackground\":\"#F9CBBE\",\"statusBarItem.prominentBackground\":\"#F9CBBE\",\"statusBarItem.prominentHoverBackground\":\"#F9CEC3\",\"tab.activeBorder\":\"#E84A72\",\"tab.border\":\"#FDF0ED00\",\"tab.inactiveBackground\":\"#FDF0ED\",\"terminal.ansiBlue\":\"#26BBD9\",\"terminal.ansiBrightBlue\":\"#3FC4DE\",\"terminal.ansiBrightCyan\":\"#6BE4E6\",\"terminal.ansiBrightGreen\":\"#3FDAA4\",\"terminal.ansiBrightMagenta\":\"#F075B5\",\"terminal.ansiBrightRed\":\"#EC6A88\",\"terminal.ansiBrightYellow\":\"#FBC3A7\",\"terminal.ansiCyan\":\"#59E1E3\",\"terminal.ansiGreen\":\"#29D398\",\"terminal.ansiMagenta\":\"#EE64AC\",\"terminal.ansiRed\":\"#E95678\",\"terminal.ansiYellow\":\"#FAB795\",\"terminal.foreground\":\"#06060C\",\"terminal.selectionBackground\":\"#F9CEC380\",\"terminalCursor.background\":\"#06060C\",\"terminalCursor.foreground\":\"#F9CEC3B3\",\"textLink.activeForeground\":\"#E73665\",\"textLink.foreground\":\"#E84A72\",\"titleBar.activeBackground\":\"#FDF0ED\",\"titleBar.inactiveBackground\":\"#FDF0ED\",\"walkThrough.embeddedEditorBackground\":\"#FADAD1\",\"widget.shadow\":\"#16161C4D\"},\"displayName\":\"Horizon Bright\",\"name\":\"horizon-bright\",\"semanticHighlighting\":true,\"tokenColors\":[{\"scope\":\"comment\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#33333380\"}},{\"scope\":\"constant\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"constant.character.escape\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"entity.name\",\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"entity.name.function\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"entity.name.tag\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DA103F\"}},{\"scope\":[\"entity.name.type\",\"storage.type.cs\"],\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"entity.other.attribute-name\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DC3318\"}},{\"scope\":\"entity.other.inherited-class\",\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"entity.other.attribute-name.id\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":[\"entity.other.attribute-name.pseudo-element\",\"entity.other.attribute-name.pseudo-class\"],\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":[\"entity.name.variable\",\"variable\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"keyword\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#8A31B9\"}},{\"scope\":\"keyword.operator\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":[\"keyword.operator.new\",\"keyword.operator.expression\",\"keyword.operator.logical\",\"keyword.operator.delete\"],\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"keyword.other.unit\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"markup.quote\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#F6661EB3\"}},{\"scope\":[\"markup.heading\",\"entity.name.section\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"markup.bold\",\"settings\":{\"fontStyle\":\"bold\",\"foreground\":\"#8A31B9\"}},{\"scope\":\"markup.italic\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#1D8991\"}},{\"scope\":[\"markup.inline.raw\",\"markup.fenced_code.block\"],\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"markup.underline.link\",\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"storage\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#8A31B9\"}},{\"scope\":[\"string.quoted\",\"string.template\"],\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"string.regexp\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"string.other.link\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"support\",\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"support.function\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"support.variable\",\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":[\"support.type.property-name\",\"meta.object-literal.key\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"support.type.property-name.css\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":[\"variable.language\"],\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#F77D26\"}},{\"scope\":\"variable.parameter\",\"settings\":{\"fontStyle\":\"italic\"}},{\"scope\":\"string.template meta.embedded\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":\"punctuation.definition.tag\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DA103FB3\"}},{\"scope\":\"punctuation.separator\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":\"punctuation.definition.template-expression\",\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"punctuation.section.embedded\",\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"punctuation.definition.list\",\"settings\":{\"foreground\":\"#DC3318\"}}],\"type\":\"dark\"}"));
1
+ var horizon_bright_default = Object.freeze(JSON.parse("{\"colors\":{\"activityBar.background\":\"#FDF0ED\",\"activityBar.dropBackground\":\"#F9CEC380\",\"activityBar.foreground\":\"#06060CE6\",\"activityBarBadge.background\":\"#E84A72\",\"activityBarBadge.foreground\":\"#06060C\",\"badge.background\":\"#F9CBBE\",\"badge.foreground\":\"#06060C\",\"breadcrumbPicker.background\":\"#FADAD1\",\"button.background\":\"#F9CBBE\",\"button.foreground\":\"#06060C\",\"debugToolBar.background\":\"#FDF0ED\",\"diffEditor.insertedTextBackground\":\"#07DA8C1A\",\"diffEditor.removedTextBackground\":\"#F43E5C1A\",\"dropdown.background\":\"#FADAD1\",\"dropdown.listBackground\":\"#F9CBBE\",\"editor.background\":\"#FDF0ED\",\"editor.findMatchBackground\":\"#F9CEC380\",\"editor.findMatchHighlightBackground\":\"#F9CEC34D\",\"editor.findRangeHighlightBackground\":\"#F9CEC31A\",\"editor.hoverHighlightBackground\":\"#F9CEC34D\",\"editor.lineHighlightBackground\":\"#F9CBBE4D\",\"editor.rangeHighlightBackground\":\"#F9CBBE80\",\"editor.selectionBackground\":\"#F9CBBE80\",\"editor.selectionHighlightBackground\":\"#F9CEC380\",\"editor.wordHighlightBackground\":\"#F9CEC380\",\"editor.wordHighlightStrongBackground\":\"#F9CEC380\",\"editorBracketMatch.background\":\"#F9CEC380\",\"editorBracketMatch.border\":\"#F9CEC300\",\"editorCodeLens.foreground\":\"#F9CEC380\",\"editorCursor.background\":\"#FDF0ED\",\"editorCursor.foreground\":\"#E84A72\",\"editorError.foreground\":\"#F43E5C\",\"editorGroup.border\":\"#1A1C231A\",\"editorGroup.dropBackground\":\"#F9CEC34D\",\"editorGroupHeader.tabsBackground\":\"#FDF0ED\",\"editorGutter.addedBackground\":\"#07DA8CB3\",\"editorGutter.deletedBackground\":\"#F43E5CB3\",\"editorGutter.modifiedBackground\":\"#1EAEAEB3\",\"editorIndentGuide.activeBackground\":\"#F9CBBE\",\"editorIndentGuide.background\":\"#F9CBBE80\",\"editorLineNumber.activeForeground\":\"#06060C80\",\"editorLineNumber.foreground\":\"#06060C1A\",\"editorOverviewRuler.addedForeground\":\"#07DA8CB3\",\"editorOverviewRuler.border\":\"#F9CBBE1A\",\"editorOverviewRuler.bracketMatchForeground\":\"#06060CB3\",\"editorOverviewRuler.deletedForeground\":\"#F43E5CB3\",\"editorOverviewRuler.errorForeground\":\"#F43E5CE6\",\"editorOverviewRuler.findMatchForeground\":\"#F9CEC3\",\"editorOverviewRuler.modifiedForeground\":\"#1EAEAEB3\",\"editorOverviewRuler.warningForeground\":\"#1EB980B3\",\"editorRuler.foreground\":\"#F9CEC34D\",\"editorSuggestWidget.highlightForeground\":\"#E84A72\",\"editorUnnecessaryCode.opacity\":\"#000000B3\",\"editorWarning.foreground\":\"#1EB980B3\",\"editorWidget.background\":\"#FADAD1\",\"editorWidget.border\":\"#FADAD1\",\"errorForeground\":\"#F43E5C\",\"extensionButton.prominentBackground\":\"#E84A72\",\"extensionButton.prominentHoverBackground\":\"#E73665\",\"focusBorder\":\"#1A1C231A\",\"foreground\":\"#06060C\",\"gitDecoration.addedResourceForeground\":\"#1EB980B3\",\"gitDecoration.deletedResourceForeground\":\"#F43E5C\",\"gitDecoration.ignoredResourceForeground\":\"#06060C4D\",\"gitDecoration.modifiedResourceForeground\":\"#AF5427\",\"gitDecoration.untrackedResourceForeground\":\"#1EB980\",\"input.background\":\"#F9CBBE\",\"inputOption.activeBorder\":\"#E7366580\",\"inputValidation.errorBackground\":\"#F43E5C80\",\"inputValidation.errorBorder\":\"#F43E5C00\",\"list.activeSelectionBackground\":\"#F9CBBE80\",\"list.activeSelectionForeground\":\"#06060C\",\"list.dropBackground\":\"#F9CEC380\",\"list.errorForeground\":\"#F43E5CE6\",\"list.focusBackground\":\"#F9CBBE80\",\"list.focusForeground\":\"#06060C\",\"list.highlightForeground\":\"#E84A72\",\"list.hoverBackground\":\"#F9CBBE80\",\"list.hoverForeground\":\"#06060C\",\"list.inactiveFocusBackground\":\"#F9CBBE80\",\"list.inactiveSelectionBackground\":\"#F9CBBE4D\",\"list.inactiveSelectionForeground\":\"#06060C\",\"list.warningForeground\":\"#1EB980B3\",\"panelTitle.activeBorder\":\"#E84A72\",\"peekView.border\":\"#1A1C231A\",\"peekViewEditor.background\":\"#FADAD1\",\"peekViewEditor.matchHighlightBackground\":\"#F9CEC380\",\"peekViewResult.background\":\"#FADAD1\",\"peekViewResult.matchHighlightBackground\":\"#F9CEC380\",\"peekViewResult.selectionBackground\":\"#F9CBBE80\",\"peekViewTitle.background\":\"#FADAD1\",\"pickerGroup.foreground\":\"#E84A72E6\",\"progressBar.background\":\"#E84A72\",\"scrollbar.shadow\":\"#16161C4D\",\"scrollbarSlider.activeBackground\":\"#F9CEC3E6\",\"scrollbarSlider.background\":\"#F9CEC380\",\"scrollbarSlider.hoverBackground\":\"#F9CEC3B3\",\"selection.background\":\"#AF542780\",\"sideBar.background\":\"#FDF0ED\",\"sideBar.dropBackground\":\"#F9CEC34D\",\"sideBar.foreground\":\"#06060CB3\",\"sideBarSectionHeader.background\":\"#FDF0ED\",\"sideBarSectionHeader.foreground\":\"#06060CB3\",\"statusBar.background\":\"#FDF0ED\",\"statusBar.debuggingBackground\":\"#AF5427\",\"statusBar.debuggingForeground\":\"#06060C\",\"statusBar.foreground\":\"#06060CB3\",\"statusBar.noFolderBackground\":\"#FDF0ED\",\"statusBarItem.hoverBackground\":\"#F9CBBE\",\"statusBarItem.prominentBackground\":\"#F9CBBE\",\"statusBarItem.prominentHoverBackground\":\"#F9CEC3\",\"tab.activeBorder\":\"#E84A72\",\"tab.border\":\"#FDF0ED00\",\"tab.inactiveBackground\":\"#FDF0ED\",\"terminal.ansiBlue\":\"#26BBD9\",\"terminal.ansiBrightBlue\":\"#3FC4DE\",\"terminal.ansiBrightCyan\":\"#6BE4E6\",\"terminal.ansiBrightGreen\":\"#3FDAA4\",\"terminal.ansiBrightMagenta\":\"#F075B5\",\"terminal.ansiBrightRed\":\"#EC6A88\",\"terminal.ansiBrightYellow\":\"#FBC3A7\",\"terminal.ansiCyan\":\"#59E1E3\",\"terminal.ansiGreen\":\"#29D398\",\"terminal.ansiMagenta\":\"#EE64AC\",\"terminal.ansiRed\":\"#E95678\",\"terminal.ansiYellow\":\"#FAB795\",\"terminal.foreground\":\"#06060C\",\"terminal.selectionBackground\":\"#F9CEC380\",\"terminalCursor.background\":\"#06060C\",\"terminalCursor.foreground\":\"#F9CEC3B3\",\"textLink.activeForeground\":\"#E73665\",\"textLink.foreground\":\"#E84A72\",\"titleBar.activeBackground\":\"#FDF0ED\",\"titleBar.inactiveBackground\":\"#FDF0ED\",\"walkThrough.embeddedEditorBackground\":\"#FADAD1\",\"widget.shadow\":\"#16161C4D\"},\"displayName\":\"Horizon Bright\",\"name\":\"horizon-bright\",\"semanticHighlighting\":true,\"tokenColors\":[{\"scope\":\"comment\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#33333380\"}},{\"scope\":\"constant\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"constant.character.escape\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"entity.name\",\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"entity.name.function\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"entity.name.tag\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DA103F\"}},{\"scope\":[\"entity.name.type\",\"storage.type.cs\"],\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"entity.other.attribute-name\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DC3318\"}},{\"scope\":\"entity.other.inherited-class\",\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"entity.other.attribute-name.id\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":[\"entity.other.attribute-name.pseudo-element\",\"entity.other.attribute-name.pseudo-class\"],\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":[\"entity.name.variable\",\"variable\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"keyword\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#8A31B9\"}},{\"scope\":\"keyword.operator\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":[\"keyword.operator.new\",\"keyword.operator.expression\",\"keyword.operator.logical\",\"keyword.operator.delete\"],\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"keyword.other.unit\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"markup.quote\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#F6661EB3\"}},{\"scope\":[\"markup.heading\",\"entity.name.section\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"markup.bold\",\"settings\":{\"fontStyle\":\"bold\",\"foreground\":\"#8A31B9\"}},{\"scope\":\"markup.italic\",\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#1D8991\"}},{\"scope\":[\"markup.inline.raw\",\"markup.fenced_code.block\"],\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"markup.underline.link\",\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"storage\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#8A31B9\"}},{\"scope\":[\"string.quoted\",\"string.template\"],\"settings\":{\"foreground\":\"#F6661E\"}},{\"scope\":\"string.regexp\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"string.other.link\",\"settings\":{\"foreground\":\"#DC3318\"}},{\"scope\":\"support\",\"settings\":{\"foreground\":\"#F77D26\"}},{\"scope\":\"support.function\",\"settings\":{\"foreground\":\"#1D8991\"}},{\"scope\":\"support.variable\",\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":[\"support.type.property-name\",\"meta.object-literal.key\"],\"settings\":{\"foreground\":\"#DA103F\"}},{\"scope\":\"support.type.property-name.css\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":[\"variable.language\"],\"settings\":{\"fontStyle\":\"italic\",\"foreground\":\"#F77D26\"}},{\"scope\":\"variable.parameter\",\"settings\":{\"fontStyle\":\"italic\"}},{\"scope\":\"string.template meta.embedded\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":\"punctuation.definition.tag\",\"settings\":{\"fontStyle\":\"normal\",\"foreground\":\"#DA103FB3\"}},{\"scope\":\"punctuation.separator\",\"settings\":{\"foreground\":\"#333333\"}},{\"scope\":\"punctuation.definition.template-expression\",\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"punctuation.section.embedded\",\"settings\":{\"foreground\":\"#8A31B9\"}},{\"scope\":\"punctuation.definition.list\",\"settings\":{\"foreground\":\"#DC3318\"}}],\"type\":\"light\"}"));
2
2
  export { horizon_bright_default as default };
@@ -3,9 +3,9 @@ import cc from "../../../../classcat/index.js";
3
3
  import { ConnectionLineType, ConnectionMode, MarkerType, PanOnScrollMode, Position, ResizeControlVariant, SelectionMode, XYDrag, XYHandle, XYMinimap, XYPanZoom, XYResizer, addEdge, adoptUserNodes, areSetsEqual, calculateNodePosition, createMarkerIds, defaultAriaLabelConfig, devWarn, elementSelectionKeys, errorMessages, evaluateAbsolutePosition, fitViewport, getBezierEdgeCenter, getBezierPath, getBoundsOfRects, getConnectedEdges, getConnectionStatus, getDimensions, getEdgeCenter, getEdgePosition, getElementsToRemove, getElevatedEdgeZIndex, getEventPosition, getHandlePosition, getHostForElement, getInternalNodesBounds, getMarkerId, getNodeDimensions, getNodesBounds, getNodesInside, getOverlappingArea, getSmoothStepPath, getStraightPath, getViewportForBounds, handleExpandParent, infiniteExtent, initialConnection, isEdgeBase, isEdgeVisible, isInputDOMNode, isMacOs, isMouseEvent, isNodeBase, isNumeric, isRectObject, mergeAriaLabelConfig, nodeHasDimensions, nodeToRect, panBy, pointToRendererPoint, rendererPointToPoint, snapPosition, updateAbsolutePositions, updateConnectionLookup, updateNodeInternals, withResolvers } from "../../../system/dist/esm/index.js";
4
4
  import { createContext, forwardRef, memo, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
- import { createPortal } from "react-dom";
7
6
  import { createWithEqualityFn, useStoreWithEqualityFn } from "zustand/traditional";
8
7
  import { shallow } from "zustand/shallow";
8
+ import { createPortal } from "react-dom";
9
9
  var StoreContext = createContext(null), Provider$1 = StoreContext.Provider, zustandErrorMessage = errorMessages.error001();
10
10
  function useStore(e, t) {
11
11
  let n = useContext(StoreContext);
@@ -1,11 +1,12 @@
1
- import { ShikiError } from "../../@shikijs/types/dist/index.js";
2
- import { addClassToHast, applyColorReplacements, createBundledHighlighter, createHighlighterCore, createPositionConverter, createShikiInternal, createShikiInternalSync, createSingletonShorthands, flatTokenVariants, getTokenStyleObject, guessEmbeddedLanguages, hastToHtml, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, makeSingletonHighlighter, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, splitToken, splitTokens, stringifyTokenStyle, toArray, tokenizeAnsiWithTheme, tokenizeWithTheme, tokensToHast, transformerDecorations, warnDeprecated } from "../../@shikijs/core/dist/index.js";
3
- import { bundledLanguages, bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo } from "./langs.js";
1
+ import { bundledLanguages, bundledLanguagesAlias, bundledLanguagesBase, bundledLanguagesInfo } from "./langs-bundle-full-DfKZStlK.js";
4
2
  import { bundledThemes, bundledThemesInfo } from "./themes.js";
5
- import { createOnigurumaEngine } from "../../@shikijs/engine-oniguruma/dist/index.js";
3
+ import { engine_oniguruma_exports } from "./engine-oniguruma.js";
4
+ import { ShikiError } from "../../@shikijs/types/dist/index.js";
5
+ import { applyColorReplacements, createShikiPrimitive, createShikiPrimitiveAsync, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, toArray, tokenizeWithTheme } from "../../@shikijs/primitive/dist/index.js";
6
+ import { addClassToHast, createBundledHighlighter, createHighlighterCore, createPositionConverter, createSingletonShorthands, flatTokenVariants, getTokenStyleObject, guessEmbeddedLanguages, hastToHtml, makeSingletonHighlighter, splitToken, splitTokens, stringifyTokenStyle, tokenizeAnsiWithTheme, tokensToHast, transformerDecorations } from "../../@shikijs/core/dist/index.js";
6
7
  var { codeToHtml, codeToHast, codeToTokens, codeToTokensBase, codeToTokensWithThemes, getSingletonHighlighter, getLastGrammarState } = /* @__PURE__ */ createSingletonShorthands(/* @__PURE__ */ createBundledHighlighter({
7
8
  langs: bundledLanguages,
8
9
  themes: bundledThemes,
9
- engine: () => createOnigurumaEngine(import("./wasm.js"))
10
+ engine: () => (0, engine_oniguruma_exports.createOnigurumaEngine)(import("./wasm.js"))
10
11
  }), { guessEmbeddedLanguages });
11
12
  export { codeToHtml };
@@ -0,0 +1,15 @@
1
+ var __defProp = Object.defineProperty, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropNames = Object.getOwnPropertyNames, __hasOwnProp = Object.prototype.hasOwnProperty, __exportAll = (t, n) => {
2
+ let r = {};
3
+ for (var i in t) __defProp(r, i, {
4
+ get: t[i],
5
+ enumerable: !0
6
+ });
7
+ return n || __defProp(r, Symbol.toStringTag, { value: "Module" }), r;
8
+ }, __copyProps = (i, a, o, s) => {
9
+ if (a && typeof a == "object" || typeof a == "function") for (var c = __getOwnPropNames(a), l = 0, u = c.length, d; l < u; l++) d = c[l], !__hasOwnProp.call(i, d) && d !== o && __defProp(i, d, {
10
+ get: ((e) => a[e]).bind(null, d),
11
+ enumerable: !(s = __getOwnPropDesc(a, d)) || s.enumerable
12
+ });
13
+ return i;
14
+ }, __reExport = (e, t, n) => (__copyProps(e, t, "default"), n && __copyProps(n, t, "default"));
15
+ export { __exportAll, __reExport };
@@ -0,0 +1,5 @@
1
+ import { __exportAll, __reExport } from "./chunk-CtajNgzt.js";
2
+ import { createOnigurumaEngine, dist_exports, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader } from "../../@shikijs/engine-oniguruma/dist/index.js";
3
+ var engine_oniguruma_exports = /* @__PURE__ */ __exportAll({});
4
+ __reExport(engine_oniguruma_exports, dist_exports);
5
+ export { engine_oniguruma_exports };
@@ -721,7 +721,7 @@ var bundledLanguagesInfo = [
721
721
  },
722
722
  {
723
723
  id: "nextflow-groovy",
724
- name: "nextflow-groovy",
724
+ name: "Nextflow Groovy",
725
725
  import: (() => import("../../@shikijs/langs/dist/nextflow-groovy.js"))
726
726
  },
727
727
  {