Skip to content

Commit 70e99e5

Browse files
committed
update deps; internal changes
1 parent c20da4c commit 70e99e5

33 files changed

+293
-216
lines changed

bun.lockb

44.6 KB
Binary file not shown.

eslint.config.mjs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import eslint from '@eslint/js';
44
import tseslint from 'typescript-eslint';
55
import only_warn from 'eslint-plugin-only-warn';
66
import no_relative_import_paths from 'eslint-plugin-no-relative-import-paths';
7+
import * as plugin_import from 'eslint-plugin-import';
78

89
export default tseslint.config(
910
{
@@ -27,12 +28,22 @@ export default tseslint.config(
2728
// @ts-ignore
2829
'only-warn': only_warn,
2930
'no-relative-import-paths': no_relative_import_paths,
31+
import: plugin_import,
3032
},
3133
rules: {
3234
'@typescript-eslint/no-explicit-any': ['warn'],
3335

3436
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_', destructuredArrayIgnorePattern: '^_' }],
35-
'@typescript-eslint/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }],
37+
'@typescript-eslint/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'separate-type-imports' }],
38+
39+
'import/consistent-type-specifier-style': ['error', 'prefer-top-level'],
40+
'import/order': [
41+
'error',
42+
{
43+
'newlines-between': 'never',
44+
alphabetize: { order: 'asc', orderImportKind: 'asc', caseInsensitive: true },
45+
},
46+
],
3647

3748
'@typescript-eslint/no-confusing-void-expression': ['error', { ignoreArrowShorthand: true }],
3849
'@typescript-eslint/restrict-template-expressions': 'off',

jsEngine/JsMDRC.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { type MarkdownPostProcessorContext, MarkdownRenderChild, Menu, setIcon, type TAbstractFile, TFile } from 'obsidian';
2-
import type JsEnginePlugin from 'jsEngine/main';
3-
4-
import { type JsExecutionContext, type JsExecution } from 'jsEngine/engine/JsExecution';
1+
import type { JsExecutionContext, JsExecution } from 'jsEngine/engine/JsExecution';
52
import { ResultRenderer } from 'jsEngine/engine/ResultRenderer';
3+
import type JsEnginePlugin from 'jsEngine/main';
4+
import type { MarkdownPostProcessorContext, TAbstractFile } from 'obsidian';
5+
import { MarkdownRenderChild, Menu, setIcon, TFile } from 'obsidian';
66

77
export class JsMDRC extends MarkdownRenderChild {
88
plugin: JsEnginePlugin;
@@ -107,10 +107,10 @@ export class JsMDRC extends MarkdownRenderChild {
107107
}
108108
}
109109

110-
async onload(): Promise<void> {
110+
onload(): void {
111111
// console.log('load');
112112

113-
await this.render();
113+
void this.render();
114114
}
115115

116116
onunload(): void {

jsEngine/Settings.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
import { type App, PluginSettingTab } from 'obsidian';
21
import type JsEnginePlugin from 'jsEngine/main';
2+
import type { App } from 'obsidian';
3+
import { PluginSettingTab } from 'obsidian';
34

4-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
5+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
56
export interface JsEnginePluginSettings {}
67

78
export const JS_ENGINE_DEFAULT_SETTINGS: JsEnginePluginSettings = {};

jsEngine/api/API.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1+
import type { InstanceId } from 'jsEngine/api/InstanceId';
2+
import { InternalAPI } from 'jsEngine/api/Internal';
3+
import { LibAPI } from 'jsEngine/api/LibAPI';
14
import { MarkdownAPI } from 'jsEngine/api/MarkdownAPI';
2-
import { type App, type Plugin } from 'obsidian';
3-
import type JsEnginePlugin from 'jsEngine/main';
4-
import { type InstanceId } from 'jsEngine/api/InstanceId';
55
import { MessageAPI } from 'jsEngine/api/MessageAPI';
6-
import { ReactiveComponent } from 'jsEngine/api/reactive/ReactiveComponent';
7-
import { LibAPI } from 'jsEngine/api/LibAPI';
8-
import { type JsFunc } from 'jsEngine/engine/JsExecution';
9-
import { InternalAPI } from 'jsEngine/api/Internal';
10-
import { QueryAPI } from 'jsEngine/api/QueryAPI';
116
import { PromptAPI } from 'jsEngine/api/PromptAPI';
7+
import { QueryAPI } from 'jsEngine/api/QueryAPI';
8+
import { ReactiveComponent } from 'jsEngine/api/reactive/ReactiveComponent';
9+
import type { JsFunc } from 'jsEngine/engine/JsExecution';
10+
import type JsEnginePlugin from 'jsEngine/main';
11+
import type { App, Plugin } from 'obsidian';
1212

1313
export class API {
1414
/**

jsEngine/api/Internal.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
import { type API } from 'jsEngine/api/API';
2-
import { type EngineExecutionParams } from 'jsEngine/engine/Engine';
3-
import { type JsExecution, type JsExecutionContext } from 'jsEngine/engine/JsExecution';
4-
import { Component, TFile } from 'obsidian';
1+
import type { API } from 'jsEngine/api/API';
2+
import type { EngineExecutionParams } from 'jsEngine/engine/Engine';
3+
import type { JsExecution, JsExecutionContext, JsExecutionGlobals, JsExecutionGlobalsConstructionOptions } from 'jsEngine/engine/JsExecution';
54
import { ResultRenderer } from 'jsEngine/engine/ResultRenderer';
5+
import { Component, TFile } from 'obsidian';
6+
import * as Obsidian from 'obsidian';
67

78
/**
89
* The internal API provides access to some of js engines internals.
@@ -87,4 +88,15 @@ export class InternalAPI {
8788
block: undefined,
8889
};
8990
}
91+
92+
public createExecutionGlobals(options: JsExecutionGlobalsConstructionOptions): JsExecutionGlobals {
93+
return {
94+
app: this.apiInstance.app,
95+
engine: options.engine ?? this.apiInstance,
96+
component: options.component,
97+
context: options.context,
98+
container: options.container,
99+
obsidian: Obsidian,
100+
};
101+
}
90102
}

jsEngine/api/LibAPI.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { type API } from 'jsEngine/api/API';
2-
import { P } from '@lemons_dev/parsinom/lib/ParsiNOM';
3-
import { P_UTILS } from '@lemons_dev/parsinom/lib/ParserUtils';
41
import { Parser } from '@lemons_dev/parsinom/lib/Parser';
5-
import { createParsingErrorMessage, ParsingError } from '@lemons_dev/parsinom/lib/ParserError';
62
import { ParserContext } from '@lemons_dev/parsinom/lib/ParserContext';
3+
import { createParsingErrorMessage, ParsingError } from '@lemons_dev/parsinom/lib/ParserError';
4+
import { P_UTILS } from '@lemons_dev/parsinom/lib/ParserUtils';
5+
import { P } from '@lemons_dev/parsinom/lib/ParsiNOM';
76
import * as IterTools from 'itertools-ts';
7+
import type { API } from 'jsEngine/api/API';
88

99
export interface LibParsiNOM {
1010
P: typeof P;

jsEngine/api/MarkdownAPI.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import { MarkdownBuilder } from 'jsEngine/api/markdown/MarkdownBuilder';
2-
import { MarkdownString } from 'jsEngine/api/markdown/MarkdownString';
1+
import type { API } from 'jsEngine/api/API';
32
import {
43
BlockQuoteElement,
54
CalloutElement,
@@ -11,7 +10,8 @@ import {
1110
TableElement,
1211
TextElement,
1312
} from 'jsEngine/api/markdown/AbstractMarkdownElementContainer';
14-
import { type API } from 'jsEngine/api/API';
13+
import { MarkdownBuilder } from 'jsEngine/api/markdown/MarkdownBuilder';
14+
import { MarkdownString } from 'jsEngine/api/markdown/MarkdownString';
1515

1616
/**
1717
* The markdown API provides utilities for creating markdown using js.

jsEngine/api/MessageAPI.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
import { type API } from 'jsEngine/api/API';
2-
import { Message, type MessageManager, type MessageType, type MessageWrapper } from 'jsEngine/messages/MessageManager';
1+
import type { API } from 'jsEngine/api/API';
2+
import type { MessageManager, MessageType, MessageWrapper } from 'jsEngine/messages/MessageManager';
3+
import { Message } from 'jsEngine/messages/MessageManager';
34

45
export class MessageAPI {
56
readonly apiInstance: API;
@@ -15,7 +16,7 @@ export class MessageAPI {
1516
}
1617

1718
public getMessageById(id: string): MessageWrapper | undefined {
18-
return this.messageManager.messages.get().get(id);
19+
return this.messageManager.messages.get().find(message => message.uuid === id);
1920
}
2021

2122
public getMessagesForInstance(): MessageWrapper[] {

jsEngine/api/PromptAPI.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import type { API } from 'jsEngine/api/API';
2-
import { ButtonStyleType } from 'jsEngine/utils/Util';
3-
import { SvelteModal } from 'jsEngine/api/prompts/SvelteModal';
42
import ButtonModalComponent from 'jsEngine/api/prompts/ButtonModalComponent.svelte';
53
import InputModalComponent from 'jsEngine/api/prompts/InputModalComponent.svelte';
64
import { Suggester } from 'jsEngine/api/prompts/Suggester';
7-
import { mount } from 'svelte';
5+
import { SvelteModal } from 'jsEngine/api/prompts/SvelteModal';
86
import type { AnySvelteComponent } from 'jsEngine/utils/SvelteUtils';
7+
import { ButtonStyleType } from 'jsEngine/utils/Util';
8+
import { mount } from 'svelte';
99

1010
export interface ModalPromptOptions {
1111
/**
@@ -139,7 +139,7 @@ export class PromptAPI {
139139
resolve as (value: unknown) => void,
140140
).open();
141141
} catch (error) {
142-
reject(error);
142+
reject(error as Error);
143143
}
144144
});
145145
}
@@ -236,7 +236,7 @@ export class PromptAPI {
236236
try {
237237
new Suggester<T>(this.apiInstance.app, options, resolve).open();
238238
} catch (error) {
239-
reject(error);
239+
reject(error as Error);
240240
}
241241
});
242242
}
@@ -275,7 +275,7 @@ export class PromptAPI {
275275
resolve as (value: unknown) => void,
276276
).open();
277277
} catch (error) {
278-
reject(error);
278+
reject(error as Error);
279279
}
280280
});
281281
}
@@ -315,7 +315,7 @@ export class PromptAPI {
315315
resolve as (value: unknown) => void,
316316
).open();
317317
} catch (error) {
318-
reject(error);
318+
reject(error as Error);
319319
}
320320
});
321321
}
@@ -354,7 +354,7 @@ export class PromptAPI {
354354
resolve as (value: unknown) => void,
355355
).open();
356356
} catch (error) {
357-
reject(error);
357+
reject(error as Error);
358358
}
359359
});
360360
}

0 commit comments

Comments
 (0)