mirror of
https://github.com/h-sphere/sql-seal.git
synced 2026-07-22 10:10:28 +00:00
* chore: reworking plugin internals into modules * feat: settings module is now working, added debug module, enabled new api module * chore: restoring external API * feat: refactoring project to use proper inversion of control * feat: plugins can now be loaded in any order * chore: final file migration, all typescript is in modules now * chore: fixing dependencies of cellParser * feat: csv and json views are only registered when they are not colliding with other plugins * feat: fixed library behaviour on canvas
21 lines
No EOL
671 B
TypeScript
21 lines
No EOL
671 B
TypeScript
import { asFactory, buildContainer } from "@hypersphere/dity";
|
|
import { ApiInit } from "./init";
|
|
import { Plugin } from "obsidian";
|
|
import { SqlSealDatabase } from "../database/database";
|
|
import { RendererRegistry } from "../editor/renderer/rendererRegistry";
|
|
import { ModernCellParser } from "../syntaxHighlight/cellParser/ModernCellParser";
|
|
|
|
export const apiModule = buildContainer(c => c
|
|
.register({
|
|
init: asFactory(ApiInit)
|
|
})
|
|
.exports('init')
|
|
.externals<{
|
|
plugin: Plugin,
|
|
cellParser: ModernCellParser,
|
|
db: SqlSealDatabase,
|
|
rendererRegistry: RendererRegistry
|
|
}>()
|
|
)
|
|
|
|
export type ApiModule = typeof apiModule |