Compare commits

...
282 changed files with 1133 additions and 1102 deletions
@@ -0,0 +1,16 @@
import communityConfig from "./eslint.community.config.mjs";
import { globalIgnores } from "eslint/config";
export default [
globalIgnores(["**/*.integration.spec.ts", "**/*.integration.test.ts"]),
...communityConfig,
{
files: ["src/**/*.ts"],
languageOptions: {
parserOptions: {
project: "./tsconfig.community-review-node-next.probe.json",
tsconfigRootDir: import.meta.dirname,
},
},
},
];
+4 -4
View File
@@ -23,7 +23,7 @@
"@smithy/types": "^4.14.3", "@smithy/types": "^4.14.3",
"@smithy/util-retry": "^4.4.5", "@smithy/util-retry": "^4.4.5",
"@vrtmrz/browser-ui-kit": "0.1.0", "@vrtmrz/browser-ui-kit": "0.1.0",
"@vrtmrz/livesync-commonlib": "0.1.13", "@vrtmrz/livesync-commonlib": "0.1.14-canary.0",
"@vrtmrz/obsidian-plugin-kit": "0.1.3", "@vrtmrz/obsidian-plugin-kit": "0.1.3",
"@vrtmrz/ui-interactions": "0.1.2", "@vrtmrz/ui-interactions": "0.1.2",
"diff-match-patch": "^1.0.5", "diff-match-patch": "^1.0.5",
@@ -4775,9 +4775,9 @@
} }
}, },
"node_modules/@vrtmrz/livesync-commonlib": { "node_modules/@vrtmrz/livesync-commonlib": {
"version": "0.1.13", "version": "0.1.14-canary.0",
"resolved": "https://registry.npmjs.org/@vrtmrz/livesync-commonlib/-/livesync-commonlib-0.1.13.tgz", "resolved": "https://registry.npmjs.org/@vrtmrz/livesync-commonlib/-/livesync-commonlib-0.1.14-canary.0.tgz",
"integrity": "sha512-yWzmq+2sGX39gIB37igrjvctJKD5N3jlWT+ATavm81aOjEp6VUOIT2FzUpOq/3BEM8eE83uzu3N6/rXEpksEiw==", "integrity": "sha512-o2RloR1NtK4FIz478dFYBDMCXSFSfMWAw9Po1SIDjcFPyLhSfpWzmOW3mPA9gq+B/DkK0/fv/y/TeF8Js4am3w==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.808.0", "@aws-sdk/client-s3": "^3.808.0",
+1 -1
View File
@@ -177,7 +177,7 @@
"@smithy/types": "^4.14.3", "@smithy/types": "^4.14.3",
"@smithy/util-retry": "^4.4.5", "@smithy/util-retry": "^4.4.5",
"@vrtmrz/browser-ui-kit": "0.1.0", "@vrtmrz/browser-ui-kit": "0.1.0",
"@vrtmrz/livesync-commonlib": "0.1.13", "@vrtmrz/livesync-commonlib": "0.1.14-canary.0",
"@vrtmrz/obsidian-plugin-kit": "0.1.3", "@vrtmrz/obsidian-plugin-kit": "0.1.3",
"@vrtmrz/ui-interactions": "0.1.2", "@vrtmrz/ui-interactions": "0.1.2",
"diff-match-patch": "^1.0.5", "diff-match-patch": "^1.0.5",
+29 -29
View File
@@ -1,35 +1,35 @@
import { LOG_LEVEL_INFO } from "octagonal-wheels/common/logger"; import { LOG_LEVEL_INFO } from "octagonal-wheels/common/logger";
import type PouchDB from "pouchdb-core"; import type PouchDB from "pouchdb-core";
import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase"; import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
import type { HasSettings, ObsidianLiveSyncSettings, EntryDoc } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { HasSettings, ObsidianLiveSyncSettings, EntryDoc } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { __$checkInstanceBinding } from "@vrtmrz/livesync-commonlib/compat/dev/checks"; import { __$checkInstanceBinding } from "@vrtmrz/livesync-commonlib/compat/dev/checks.js";
import type { Confirm } from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm"; import type { Confirm } from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm.js";
import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess"; import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess.js";
import type { Rebuilder } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseRebuilder"; import type { Rebuilder } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseRebuilder.js";
import type { IFileHandler } from "@vrtmrz/livesync-commonlib/compat/interfaces/FileHandler"; import type { IFileHandler } from "@vrtmrz/livesync-commonlib/compat/interfaces/FileHandler.js";
import type { StorageAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/StorageAccess"; import type { StorageAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/StorageAccess.js";
import type { LiveSyncLocalDBEnv } from "@vrtmrz/livesync-commonlib/compat/pouchdb/LiveSyncLocalDB"; import type { LiveSyncLocalDBEnv } from "@vrtmrz/livesync-commonlib/compat/pouchdb/LiveSyncLocalDB.js";
import type { LiveSyncCouchDBReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/couchdb/LiveSyncReplicator"; import type { LiveSyncCouchDBReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/couchdb/LiveSyncReplicator.js";
import type { CheckPointInfo } from "@vrtmrz/livesync-commonlib/compat/replication/journal/JournalSyncTypes"; import type { CheckPointInfo } from "@vrtmrz/livesync-commonlib/compat/replication/journal/JournalSyncTypes.js";
import type { LiveSyncJournalReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/journal/LiveSyncJournalReplicatorEnv"; import type { LiveSyncJournalReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/journal/LiveSyncJournalReplicatorEnv.js";
import type { LiveSyncReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/LiveSyncAbstractReplicator"; import type { LiveSyncReplicatorEnv } from "@vrtmrz/livesync-commonlib/compat/replication/LiveSyncAbstractReplicator.js";
import { useTargetFilters } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/targetFilter"; import { useTargetFilters } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/targetFilter.js";
import { useRemoteConfigurationMigration } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/remoteConfig"; import { useRemoteConfigurationMigration } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/remoteConfig.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import { AbstractModule } from "./modules/AbstractModule"; import { AbstractModule } from "./modules/AbstractModule.js";
import { ModulePeriodicProcess } from "./modules/core/ModulePeriodicProcess"; import { ModulePeriodicProcess } from "./modules/core/ModulePeriodicProcess.js";
import { ModuleReplicator } from "./modules/core/ModuleReplicator"; import { ModuleReplicator } from "./modules/core/ModuleReplicator.js";
import { ModuleReplicatorCouchDB } from "./modules/core/ModuleReplicatorCouchDB"; import { ModuleReplicatorCouchDB } from "./modules/core/ModuleReplicatorCouchDB.js";
import { ModuleReplicatorMinIO } from "./modules/core/ModuleReplicatorMinIO"; import { ModuleReplicatorMinIO } from "./modules/core/ModuleReplicatorMinIO.js";
import { ModuleConflictChecker } from "./modules/coreFeatures/ModuleConflictChecker"; import { ModuleConflictChecker } from "./modules/coreFeatures/ModuleConflictChecker.js";
import { ModuleConflictResolver } from "./modules/coreFeatures/ModuleConflictResolver"; import { ModuleConflictResolver } from "./modules/coreFeatures/ModuleConflictResolver.js";
import { ModuleResolvingMismatchedTweaks } from "./modules/coreFeatures/ModuleResolveMismatchedTweaks"; import { ModuleResolvingMismatchedTweaks } from "./modules/coreFeatures/ModuleResolveMismatchedTweaks.js";
import { ModuleLiveSyncMain } from "./modules/main/ModuleLiveSyncMain"; import { ModuleLiveSyncMain } from "./modules/main/ModuleLiveSyncMain.js";
import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule"; import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule.js";
import { ModuleBasicMenu } from "./modules/essential/ModuleBasicMenu"; import { ModuleBasicMenu } from "./modules/essential/ModuleBasicMenu.js";
import { usePrepareDatabaseForUse } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/prepareDatabaseForUse"; import { usePrepareDatabaseForUse } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/prepareDatabaseForUse.js";
import type { Constructor } from "@vrtmrz/livesync-commonlib/compat/common/utils.type"; import type { Constructor } from "@vrtmrz/livesync-commonlib/compat/common/utils.type.js";
export class LiveSyncBaseCore< export class LiveSyncBaseCore<
T extends ServiceContext = ServiceContext, T extends ServiceContext = ServiceContext,
+1 -1
View File
@@ -1,4 +1,4 @@
import type { IStorageAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IStorageAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
/** One platform-neutral storage adapter contract case. */ /** One platform-neutral storage adapter contract case. */
export interface StorageAdapterContractCase { export interface StorageAdapterContractCase {
+6 -6
View File
@@ -1,11 +1,11 @@
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { EVENT_PLUGIN_UNLOADED } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents"; import { EVENT_PLUGIN_UNLOADED } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents.js";
import { BrowserUiNotifications, createBrowserUi } from "@vrtmrz/browser-ui-kit"; import { BrowserUiNotifications, createBrowserUi } from "@vrtmrz/browser-ui-kit";
import { createNativeElement } from "@/apps/browserDom"; import { createNativeElement } from "@/apps/browserDom.js";
import { renderMessageMarkdownInto } from "./ui/renderMessageMarkdown"; import { renderMessageMarkdownInto } from "./ui/renderMessageMarkdown.js";
import { UiInteractionsConfirm } from "./UiInteractionsConfirm"; import { UiInteractionsConfirm } from "./UiInteractionsConfirm.js";
/** /**
* Compatibility facade consumed by Commonlib while browser presentation is * Compatibility facade consumed by Commonlib while browser presentation is
+1 -1
View File
@@ -1,7 +1,7 @@
import type { import type {
KeyValueDatabase, KeyValueDatabase,
KeyValueDatabaseFactory, KeyValueDatabaseFactory,
} from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase"; } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase.js";
import { deleteDB, openDB, type IDBPDatabase } from "idb"; import { deleteDB, openDB, type IDBPDatabase } from "idb";
import { serialized } from "octagonal-wheels/concurrency/lock"; import { serialized } from "octagonal-wheels/concurrency/lock";
+2 -2
View File
@@ -1,8 +1,8 @@
import { promiseWithResolvers, type PromiseWithResolvers } from "octagonal-wheels/promises"; import { promiseWithResolvers, type PromiseWithResolvers } from "octagonal-wheels/promises";
import { createNativeElement } from "@/apps/browserDom"; import { createNativeElement } from "@/apps/browserDom.js";
import { mount } from "svelte"; import { mount } from "svelte";
import MenuView from "./ui/MenuView.svelte"; import MenuView from "./ui/MenuView.svelte";
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
export class MenuItem { export class MenuItem {
type = "item"; type = "item";
@@ -1,6 +1,6 @@
<script lang="ts"> <script lang="ts">
import { onMount } from "svelte"; import { onMount } from "svelte";
import type { P2PSyncSetting } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { P2PSyncSetting } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost"; import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost";
@@ -1,13 +1,13 @@
import { import {
type ComponentHasResult, type ComponentHasResult,
SvelteDialogManagerBase, SvelteDialogManagerBase,
} from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog"; } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog.js";
import { createNativeElement } from "@/apps/browserDom"; import { createNativeElement } from "@/apps/browserDom.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import type { SvelteDialogManagerDependencies } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog"; import type { SvelteDialogManagerDependencies } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog.js";
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import DialogHost from "@/modules/services/LiveSyncUI/DialogHost.svelte"; import DialogHost from "@/modules/services/LiveSyncUI/DialogHost.svelte";
import { SvelteDialogSession } from "@/modules/services/SvelteDialogSession"; import { SvelteDialogSession } from "@/modules/services/SvelteDialogSession.js";
export class BrowserModal { export class BrowserModal {
contentEl: HTMLElement; contentEl: HTMLElement;
@@ -1,10 +1,10 @@
import type { LOG_LEVEL } from "@vrtmrz/livesync-commonlib/compat/common/logger"; import type { LOG_LEVEL } from "@vrtmrz/livesync-commonlib/compat/common/logger.js";
import type { Confirm } from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm"; import type { Confirm } from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm.js";
import type { ICommandCompat } from "@vrtmrz/livesync-commonlib/compat/services/base/IService"; import type { ICommandCompat } from "@vrtmrz/livesync-commonlib/compat/services/base/IService.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { InjectableAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAPIService"; import { InjectableAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAPIService.js";
import { FetchHttpHandler } from "@smithy/fetch-http-handler"; import { FetchHttpHandler } from "@smithy/fetch-http-handler";
import { _fetch } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _fetch } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
declare const MANIFEST_VERSION: string | undefined; declare const MANIFEST_VERSION: string | undefined;
declare const PACKAGE_VERSION: string | undefined; declare const PACKAGE_VERSION: string | undefined;
+8 -8
View File
@@ -1,12 +1,12 @@
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import type { AppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/base/AppLifecycleService"; import type { AppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/base/AppLifecycleService.js";
import type { ConfigService } from "@vrtmrz/livesync-commonlib/compat/services/base/ConfigService"; import type { ConfigService } from "@vrtmrz/livesync-commonlib/compat/services/base/ConfigService.js";
import type { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService"; import type { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService.js";
import type { ReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/base/ReplicatorService"; import type { ReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/base/ReplicatorService.js";
import type { InjectableAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAPIService"; import type { InjectableAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAPIService.js";
import { UIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/UIService"; import { UIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/UIService.js";
import DialogToCopy from "@/modules/services/LiveSyncUI/dialogues/DialogueToCopy.svelte"; import DialogToCopy from "@/modules/services/LiveSyncUI/dialogues/DialogueToCopy.svelte";
import { BrowserSvelteDialogManager } from "./BrowserSvelteDialogManager"; import { BrowserSvelteDialogManager } from "./BrowserSvelteDialogManager.js";
export interface LiveSyncBrowserUIServiceDependencies<T extends ServiceContext> { export interface LiveSyncBrowserUIServiceDependencies<T extends ServiceContext> {
API: InjectableAPIService<T>; API: InjectableAPIService<T>;
+1 -1
View File
@@ -1,7 +1,7 @@
import type { import type {
Confirm, Confirm,
ConfirmActionLayout, ConfirmActionLayout,
} from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm"; } from "@vrtmrz/livesync-commonlib/compat/interfaces/Confirm.js";
import type { UiInteractions, UiNotifications } from "@vrtmrz/ui-interactions"; import type { UiInteractions, UiNotifications } from "@vrtmrz/ui-interactions";
const DEFAULT_LABELS = { const DEFAULT_LABELS = {
@@ -1,34 +1,34 @@
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { KeyValueDatabaseFactory } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase"; import type { KeyValueDatabaseFactory } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase.js";
import { PouchDB } from "@vrtmrz/livesync-commonlib/compat/pouchdb/pouchdb-browser"; import { PouchDB } from "@vrtmrz/livesync-commonlib/compat/pouchdb/pouchdb-browser.js";
import { ConfigService } from "@vrtmrz/livesync-commonlib/compat/services/base/ConfigService"; import { ConfigService } from "@vrtmrz/livesync-commonlib/compat/services/base/ConfigService.js";
import { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService"; import { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService.js";
import { DatabaseService } from "@vrtmrz/livesync-commonlib/compat/services/base/DatabaseService"; import { DatabaseService } from "@vrtmrz/livesync-commonlib/compat/services/base/DatabaseService.js";
import { KeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/KeyValueDBService"; import { KeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/KeyValueDBService.js";
import type { ISettingService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService"; import type { ISettingService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService.js";
import { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService"; import { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService.js";
import { InjectableConflictService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableConflictService"; import { InjectableConflictService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableConflictService.js";
import { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService"; import { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService.js";
import { InjectableFileProcessingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableFileProcessingService"; import { InjectableFileProcessingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableFileProcessingService.js";
import { PathServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectablePathService"; import { PathServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectablePathService.js";
import { InjectableRemoteService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableRemoteService"; import { InjectableRemoteService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableRemoteService.js";
import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService"; import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService.js";
import { InjectableReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicatorService"; import { InjectableReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicatorService.js";
import { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import { InjectableSettingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableSettingService"; import { InjectableSettingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableSettingService.js";
import { InjectableTestService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTestService"; import { InjectableTestService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTestService.js";
import { InjectableTweakValueService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTweakValueService"; import { InjectableTweakValueService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTweakValueService.js";
import { InjectableVaultServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableVaultService"; import { InjectableVaultServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableVaultService.js";
import { setLang, translateLiveSyncMessage } from "@/common/translation"; import { setLang, translateLiveSyncMessage } from "@/common/translation.js";
import { BrowserConfirm } from "./BrowserConfirm"; import { BrowserConfirm } from "./BrowserConfirm.js";
import { createBrowserKeyValueDatabaseFactory } from "./BrowserKeyValueDatabase"; import { createBrowserKeyValueDatabaseFactory } from "./BrowserKeyValueDatabase.js";
import { import {
LiveSyncBrowserAPIService, LiveSyncBrowserAPIService,
type LiveSyncBrowserAPIServiceOptions, type LiveSyncBrowserAPIServiceOptions,
} from "./LiveSyncBrowserAPIService"; } from "./LiveSyncBrowserAPIService.js";
import { LiveSyncBrowserUIService } from "./LiveSyncBrowserUIService"; import { LiveSyncBrowserUIService } from "./LiveSyncBrowserUIService.js";
export interface LiveSyncBrowserSettingsPersistence { export interface LiveSyncBrowserSettingsPersistence {
load(): Promise<ObsidianLiveSyncSettings | undefined>; load(): Promise<ObsidianLiveSyncSettings | undefined>;
@@ -1,5 +1,5 @@
import { createServiceContext } from "@vrtmrz/livesync-commonlib/context"; import { createServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { DEFAULT_SETTINGS } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { DEFAULT_SETTINGS } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { afterEach, describe, expect, it, vi } from "vitest"; import { afterEach, describe, expect, it, vi } from "vitest";
import { import {
@@ -1,7 +1,7 @@
import type { FilePath, UXFileInfoStub, UXFolderInfo } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXFileInfoStub, UXFolderInfo } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IConversionAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IConversionAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { NodeFile, NodeFolder } from "./NodeTypes"; import type { NodeFile, NodeFolder } from "./NodeTypes.js";
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
/** /**
* Conversion adapter implementation for Node.js * Conversion adapter implementation for Node.js
+10 -10
View File
@@ -1,13 +1,13 @@
import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IFileSystemAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IFileSystemAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import { NodePathAdapter } from "./NodePathAdapter"; import { NodePathAdapter } from "./NodePathAdapter.js";
import { NodeTypeGuardAdapter } from "./NodeTypeGuardAdapter"; import { NodeTypeGuardAdapter } from "./NodeTypeGuardAdapter.js";
import { NodeConversionAdapter } from "./NodeConversionAdapter"; import { NodeConversionAdapter } from "./NodeConversionAdapter.js";
import { NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node"; import { NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node.js";
import { NodeVaultAdapter } from "./NodeVaultAdapter"; import { NodeVaultAdapter } from "./NodeVaultAdapter.js";
import type { NodeFile, NodeFolder, NodeStat } from "./NodeTypes"; import type { NodeFile, NodeFolder, NodeStat } from "./NodeTypes.js";
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput"; import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput.js";
/** /**
* Complete file system adapter implementation for Node.js * Complete file system adapter implementation for Node.js
+4 -4
View File
@@ -1,7 +1,7 @@
import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IPathAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IPathAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { NodeFile } from "./NodeTypes"; import type { NodeFile } from "./NodeTypes.js";
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
/** /**
* Path adapter implementation for Node.js * Path adapter implementation for Node.js
@@ -1,6 +1,6 @@
import { afterEach, describe, expect, it } from "vitest"; import { afterEach, describe, expect, it } from "vitest";
import { storageAdapterContractCases } from "@/apps/_test/storageAdapterContract"; import { storageAdapterContractCases } from "@/apps/_test/storageAdapterContract";
import { fsPromises as fs, os, path, NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, os, path, NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node.js";
describe("NodeStorageAdapter", () => { describe("NodeStorageAdapter", () => {
const tempDirs: string[] = []; const tempDirs: string[] = [];
@@ -1,5 +1,5 @@
import type { ITypeGuardAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { ITypeGuardAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { NodeFile, NodeFolder } from "./NodeTypes"; import type { NodeFile, NodeFolder } from "./NodeTypes.js";
/** /**
* Type guard adapter implementation for Node.js * Type guard adapter implementation for Node.js
+1 -1
View File
@@ -1,4 +1,4 @@
import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
/** /**
* Node.js file representation * Node.js file representation
+4 -4
View File
@@ -1,7 +1,7 @@
import type { FilePath, UXDataWriteOptions } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXDataWriteOptions } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IVaultAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IVaultAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { NodeFile, NodeFolder } from "./NodeTypes"; import type { NodeFile, NodeFolder } from "./NodeTypes.js";
import { NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node"; import { NodeStorageAdapter } from "@vrtmrz/livesync-commonlib/node.js";
/** /**
* Vault adapter implementation for Node.js * Vault adapter implementation for Node.js
@@ -1,6 +1,6 @@
import { fsPromises, os, path } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises, os, path } from "@vrtmrz/livesync-commonlib/node.js";
import { describe, expect, it, vi } from "vitest"; import { describe, expect, it, vi } from "vitest";
import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { NodeFileSystemAdapter } from "./NodeFileSystemAdapter"; import { NodeFileSystemAdapter } from "./NodeFileSystemAdapter";
import { NodeVaultAdapter } from "./NodeVaultAdapter"; import { NodeVaultAdapter } from "./NodeVaultAdapter";
+1 -1
View File
@@ -1,4 +1,4 @@
import type { StandardIo } from "@vrtmrz/livesync-commonlib/context"; import type { StandardIo } from "@vrtmrz/livesync-commonlib/context.js";
/** Report a CLI-owned diagnostic without selecting its final presentation channel. */ /** Report a CLI-owned diagnostic without selecting its final presentation channel. */
export type CliDiagnosticReporter = (message: string, detail?: unknown) => void; export type CliDiagnosticReporter = (message: string, detail?: unknown) => void;
+2 -2
View File
@@ -1,5 +1,5 @@
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { createNewVaultSettings } from "@vrtmrz/livesync-commonlib/settings"; import { createNewVaultSettings } from "@vrtmrz/livesync-commonlib/settings.js";
export function createDefaultCliSettings(): ObsidianLiveSyncSettings { export function createDefaultCliSettings(): ObsidianLiveSyncSettings {
return { return {
@@ -1,5 +1,5 @@
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import { createNewVaultSettings } from "@vrtmrz/livesync-commonlib/settings"; import { createNewVaultSettings } from "@vrtmrz/livesync-commonlib/settings.js";
import { createDefaultCliSettings } from "./cliSettingsDefaults.ts"; import { createDefaultCliSettings } from "./cliSettingsDefaults.ts";
describe("createDefaultCliSettings", () => { describe("createDefaultCliSettings", () => {
@@ -1,15 +1,15 @@
import { describe, expect, it, vi, beforeEach, afterEach } from "vitest"; import { describe, expect, it, vi, beforeEach, afterEach } from "vitest";
import { createServiceContext } from "@vrtmrz/livesync-commonlib/context"; import { createServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { runCommand } from "./runCommand"; import { runCommand } from "./runCommand";
import type { CLIOptions } from "./types"; import type { CLIOptions } from "./types";
// Mock performFullScan so daemon tests don't require a real CouchDB connection. // Mock performFullScan so daemon tests don't require a real CouchDB connection.
vi.mock("@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner", () => ({ vi.mock("@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner.js", () => ({
performFullScan: vi.fn(async () => true), performFullScan: vi.fn(async () => true),
})); }));
// Mock UnresolvedErrorManager to avoid event-hub side effects. // Mock UnresolvedErrorManager to avoid event-hub side effects.
vi.mock("@vrtmrz/livesync-commonlib/compat/services/base/UnresolvedErrorManager", () => ({ vi.mock("@vrtmrz/livesync-commonlib/compat/services/base/UnresolvedErrorManager.js", () => ({
UnresolvedErrorManager: class UnresolvedErrorManager { UnresolvedErrorManager: class UnresolvedErrorManager {
showError() {} showError() {}
clearError() {} clearError() {}
@@ -17,7 +17,7 @@ vi.mock("@vrtmrz/livesync-commonlib/compat/services/base/UnresolvedErrorManager"
}, },
})); }));
import * as offlineScanner from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner"; import * as offlineScanner from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner.js";
function createCoreMock() { function createCoreMock() {
const standardIo = { const standardIo = {
+8 -8
View File
@@ -1,11 +1,11 @@
import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import { P2P_DEFAULT_SETTINGS } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { P2P_DEFAULT_SETTINGS } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator"; import { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { LiveSyncError } from "@vrtmrz/livesync-commonlib/compat/common/LSError"; import { LiveSyncError } from "@vrtmrz/livesync-commonlib/compat/common/LSError.js";
import { getPeerConnectionStats } from "@vrtmrz/livesync-commonlib/compat/rpc/transports/DiagRTCPeerConnections.utils"; import { getPeerConnectionStats } from "@vrtmrz/livesync-commonlib/compat/rpc/transports/DiagRTCPeerConnections.utils.js";
import { fsPromises } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises } from "@vrtmrz/livesync-commonlib/node.js";
type CLIP2PPeer = { type CLIP2PPeer = {
peerId: string; peerId: string;
+16 -16
View File
@@ -1,5 +1,5 @@
import { decodeSettingsFromSetupURI } from "@vrtmrz/livesync-commonlib/compat/API/processSetting"; import { decodeSettingsFromSetupURI } from "@vrtmrz/livesync-commonlib/compat/API/processSetting.js";
import { configURIBase } from "@vrtmrz/livesync-commonlib/compat/common/models/shared.const"; import { configURIBase } from "@vrtmrz/livesync-commonlib/compat/common/models/shared.const.js";
import { import {
DEFAULT_SETTINGS, DEFAULT_SETTINGS,
MILESTONE_DOCID, MILESTONE_DOCID,
@@ -9,23 +9,23 @@ import {
REMOTE_MINIO, REMOTE_MINIO,
type EntryMilestoneInfo, type EntryMilestoneInfo,
type EntryDoc, type EntryDoc,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString"; import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString.js";
import { import {
activateRemoteConfiguration, activateRemoteConfiguration,
createRemoteConfigurationId, createRemoteConfigurationId,
} from "@vrtmrz/livesync-commonlib/remote-configurations"; } from "@vrtmrz/livesync-commonlib/remote-configurations.js";
import { stripAllPrefixes } from "@vrtmrz/livesync-commonlib/compat/string_and_binary/path"; import { stripAllPrefixes } from "@vrtmrz/livesync-commonlib/compat/string_and_binary/path.js";
import type { CLICommandContext, CLIOptions } from "./types"; import type { CLICommandContext, CLIOptions } from "./types.js";
import { toArrayBuffer, toDatabaseRelativePath } from "./utils"; import { toArrayBuffer, toDatabaseRelativePath } from "./utils.js";
import { collectPeers, openP2PHost, parseTimeoutSeconds, syncWithPeer } from "./p2p"; import { collectPeers, openP2PHost, parseTimeoutSeconds, syncWithPeer } from "./p2p.js";
import { performFullScan } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner"; import { performFullScan } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner.js";
import { UnresolvedErrorManager } from "@vrtmrz/livesync-commonlib/compat/services/base/UnresolvedErrorManager"; import { UnresolvedErrorManager } from "@vrtmrz/livesync-commonlib/compat/services/base/UnresolvedErrorManager.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node.js";
import type { LiveSyncCouchDBReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/couchdb/LiveSyncReplicator"; import type { LiveSyncCouchDBReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/couchdb/LiveSyncReplicator.js";
import type { LiveSyncJournalReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/journal/LiveSyncJournalReplicator"; import type { LiveSyncJournalReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/journal/LiveSyncJournalReplicator.js";
import { writeStderrLine, writeStdoutLine } from "@/apps/cli/cliOutput"; import { writeStderrLine, writeStdoutLine } from "@/apps/cli/cliOutput.js";
function redactConnectionString(uri: string): string { function redactConnectionString(uri: string): string {
return uri.replace(/\/\/([^@/]+)@/u, "//***@"); return uri.replace(/\/\/([^@/]+)@/u, "//***@");
@@ -1,8 +1,8 @@
import { fsPromises as fs, os, path } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, os, path } from "@vrtmrz/livesync-commonlib/node.js";
import * as processSetting from "@vrtmrz/livesync-commonlib/compat/API/processSetting"; import * as processSetting from "@vrtmrz/livesync-commonlib/compat/API/processSetting.js";
import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString"; import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString.js";
import { configURIBase } from "@vrtmrz/livesync-commonlib/compat/common/models/shared.const"; import { configURIBase } from "@vrtmrz/livesync-commonlib/compat/common/models/shared.const.js";
import { DEFAULT_SETTINGS, REMOTE_COUCHDB, REMOTE_MINIO, REMOTE_P2P } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { DEFAULT_SETTINGS, REMOTE_COUCHDB, REMOTE_MINIO, REMOTE_P2P } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { describe, expect, it, vi, beforeEach, afterEach } from "vitest"; import { describe, expect, it, vi, beforeEach, afterEach } from "vitest";
import { runCommand } from "./runCommand"; import { runCommand } from "./runCommand";
import type { CLIOptions } from "./types"; import type { CLIOptions } from "./types";
+4 -4
View File
@@ -1,7 +1,7 @@
import { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { NodeServiceContext } from "@/apps/cli/services/NodeServiceContext"; import type { NodeServiceContext } from "@/apps/cli/services/NodeServiceContext.js";
import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult"; import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult.js";
export type CLICommand = export type CLICommand =
| "daemon" | "daemon"
+1 -1
View File
@@ -1,4 +1,4 @@
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
export function toArrayBuffer(data: Buffer): ArrayBuffer { export function toArrayBuffer(data: Buffer): ArrayBuffer {
return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength) as ArrayBuffer; return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength) as ArrayBuffer;
+1 -1
View File
@@ -1,4 +1,4 @@
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import { toDatabaseRelativePath } from "./utils"; import { toDatabaseRelativePath } from "./utils";
+4 -4
View File
@@ -1,9 +1,9 @@
#!/usr/bin/env node #!/usr/bin/env node
import { RTCPeerConnection } from "werift"; import { RTCPeerConnection } from "werift";
import { main } from "./main"; import { main } from "./main.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { createNodeStandardIo } from "@vrtmrz/livesync-commonlib/node"; import { createNodeStandardIo } from "@vrtmrz/livesync-commonlib/node.js";
import { writeStderrLine } from "./cliOutput"; import { writeStderrLine } from "./cliOutput.js";
if ( if (
typeof (compatGlobal as unknown as Record<string, unknown>).RTCPeerConnection === "undefined" && typeof (compatGlobal as unknown as Record<string, unknown>).RTCPeerConnection === "undefined" &&
+20 -20
View File
@@ -1,14 +1,14 @@
import { NodeServiceContext, NodeServiceHub } from "./services/NodeServiceHub"; import { NodeServiceContext, NodeServiceHub } from "./services/NodeServiceHub.js";
import { configureNodeLocalStorage, ensureGlobalNodeLocalStorage } from "./services/NodeLocalStorage"; import { configureNodeLocalStorage, ensureGlobalNodeLocalStorage } from "./services/NodeLocalStorage.js";
import { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import { initialiseServiceModulesCLI } from "./serviceModules/CLIServiceModules"; import { initialiseServiceModulesCLI } from "./serviceModules/CLIServiceModules.js";
import { import {
LOG_LEVEL_VERBOSE, LOG_LEVEL_VERBOSE,
type LOG_LEVEL, type LOG_LEVEL,
type ObsidianLiveSyncSettings, type ObsidianLiveSyncSettings,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import type { InjectableSettingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableSettingService"; import type { InjectableSettingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableSettingService.js";
import { import {
LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG,
setGlobalLogFunction, setGlobalLogFunction,
@@ -17,18 +17,18 @@ import {
LOG_LEVEL_URGENT, LOG_LEVEL_URGENT,
LOG_LEVEL_NOTICE, LOG_LEVEL_NOTICE,
} from "octagonal-wheels/common/logger"; } from "octagonal-wheels/common/logger";
import { runCommand } from "./commands/runCommand"; import { runCommand } from "./commands/runCommand.js";
import { isCLICommand } from "./commands/types"; import { isCLICommand } from "./commands/types.js";
import type { CLICommand, CLICommandContext, CLIOptions } from "./commands/types"; import type { CLICommand, CLICommandContext, CLIOptions } from "./commands/types.js";
import { getPathFromUXFileInfo } from "@vrtmrz/livesync-commonlib/compat/common/typeUtils"; import { getPathFromUXFileInfo } from "@vrtmrz/livesync-commonlib/compat/common/typeUtils.js";
import { stripAllPrefixes } from "@vrtmrz/livesync-commonlib/compat/string_and_binary/path"; import { stripAllPrefixes } from "@vrtmrz/livesync-commonlib/compat/string_and_binary/path.js";
import { IgnoreRules } from "./serviceModules/IgnoreRules"; import { IgnoreRules } from "./serviceModules/IgnoreRules.js";
import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature"; import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature.js";
import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult"; import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult.js";
import { createNodeStandardIo, fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node"; import { createNodeStandardIo, fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node.js";
import type { StandardIo } from "@vrtmrz/livesync-commonlib/context"; import type { StandardIo } from "@vrtmrz/livesync-commonlib/context.js";
import { writeStderrLine, writeStdoutLine } from "./cliOutput"; import { writeStderrLine, writeStdoutLine } from "./cliOutput.js";
import { createDefaultCliSettings } from "./cliSettingsDefaults"; import { createDefaultCliSettings } from "./cliSettingsDefaults.js";
import { import {
applyStoredSetting, applyStoredSetting,
changedSettingKeys, changedSettingKeys,
@@ -38,7 +38,7 @@ import {
preserveStoredSetting, preserveStoredSetting,
reconcileDurableSettings, reconcileDurableSettings,
settingsEqual, settingsEqual,
} from "./settingsPersistence"; } from "./settingsPersistence.js";
const SETTINGS_FILE = ".livesync/settings.json"; const SETTINGS_FILE = ".livesync/settings.json";
ensureGlobalNodeLocalStorage(); ensureGlobalNodeLocalStorage();
@@ -1,6 +1,6 @@
import type { FilePath, UXFileInfoStub, UXInternalFileInfoStub } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXFileInfoStub, UXInternalFileInfoStub } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { FileEventItem } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FileEventItem } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IStorageEventManagerAdapter } from "@vrtmrz/livesync-commonlib/compat/managers/adapters"; import type { IStorageEventManagerAdapter } from "@vrtmrz/livesync-commonlib/compat/managers/adapters.js";
import type { import type {
IStorageEventTypeGuardAdapter, IStorageEventTypeGuardAdapter,
IStorageEventPersistenceAdapter, IStorageEventPersistenceAdapter,
@@ -8,13 +8,13 @@ import type {
IStorageEventStatusAdapter, IStorageEventStatusAdapter,
IStorageEventConverterAdapter, IStorageEventConverterAdapter,
IStorageEventWatchHandlers, IStorageEventWatchHandlers,
} from "@vrtmrz/livesync-commonlib/compat/managers/adapters"; } from "@vrtmrz/livesync-commonlib/compat/managers/adapters.js";
import type { FileEventItemSentinel } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager"; import type { FileEventItemSentinel } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager.js";
import type { NodeFile, NodeFolder } from "@/apps/cli/adapters/NodeTypes"; import type { NodeFile, NodeFolder } from "@/apps/cli/adapters/NodeTypes.js";
import { watch as chokidarWatch, type FSWatcher } from "chokidar"; import { watch as chokidarWatch, type FSWatcher } from "chokidar";
import type { IgnoreRules } from "@/apps/cli/serviceModules/IgnoreRules"; import type { IgnoreRules } from "@/apps/cli/serviceModules/IgnoreRules.js";
import { fsPromises as fs, path, type Stats } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, path, type Stats } from "@vrtmrz/livesync-commonlib/node.js";
import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput"; import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput.js";
/** /**
* CLI-specific type guard adapter * CLI-specific type guard adapter
@@ -1,5 +1,5 @@
import { describe, expect, it, vi, beforeEach } from "vitest"; import { describe, expect, it, vi, beforeEach } from "vitest";
import type { IStorageEventWatchHandlers } from "@vrtmrz/livesync-commonlib/compat/managers/adapters"; import type { IStorageEventWatchHandlers } from "@vrtmrz/livesync-commonlib/compat/managers/adapters.js";
import type { NodeFile } from "@/apps/cli/adapters/NodeTypes"; import type { NodeFile } from "@/apps/cli/adapters/NodeTypes";
// ── chokidar mock ────────────────────────────────────────────────────────────── // ── chokidar mock ──────────────────────────────────────────────────────────────
@@ -1,10 +1,10 @@
import { StorageEventManagerBase, type StorageEventManagerBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager"; import { StorageEventManagerBase, type StorageEventManagerBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager.js";
import { CLIStorageEventManagerAdapter } from "./CLIStorageEventManagerAdapter"; import { CLIStorageEventManagerAdapter } from "./CLIStorageEventManagerAdapter.js";
import type { IMinimumLiveSyncCommands, LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { IMinimumLiveSyncCommands, LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import type { IgnoreRules } from "@/apps/cli/serviceModules/IgnoreRules"; import type { IgnoreRules } from "@/apps/cli/serviceModules/IgnoreRules.js";
import { LOG_LEVEL_NOTICE } from "octagonal-wheels/common/logger"; import { LOG_LEVEL_NOTICE } from "octagonal-wheels/common/logger";
// import type { IMinimumLiveSyncCommands } from "@vrtmrz/livesync-commonlib/compat/services/base/IService"; // import type { IMinimumLiveSyncCommands } from "@vrtmrz/livesync-commonlib/compat/services/base/IService.js";
export class StorageEventManagerCLI extends StorageEventManagerBase<CLIStorageEventManagerAdapter> { export class StorageEventManagerCLI extends StorageEventManagerBase<CLIStorageEventManagerAdapter> {
core: LiveSyncBaseCore<ServiceContext, IMinimumLiveSyncCommands>; core: LiveSyncBaseCore<ServiceContext, IMinimumLiveSyncCommands>;
@@ -1,16 +1,16 @@
import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import { ServiceRebuilder } from "@vrtmrz/livesync-commonlib/compat/serviceModules/Rebuilder"; import { ServiceRebuilder } from "@vrtmrz/livesync-commonlib/compat/serviceModules/Rebuilder.js";
import { ServiceFileHandler } from "@/serviceModules/FileHandler"; import { ServiceFileHandler } from "@/serviceModules/FileHandler.js";
import { StorageAccessManager } from "@vrtmrz/livesync-commonlib/compat/managers/StorageProcessingManager"; import { StorageAccessManager } from "@vrtmrz/livesync-commonlib/compat/managers/StorageProcessingManager.js";
import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { FileAccessCLI } from "./FileAccessCLI"; import { FileAccessCLI } from "./FileAccessCLI.js";
import { ServiceFileAccessCLI } from "./ServiceFileAccessImpl"; import { ServiceFileAccessCLI } from "./ServiceFileAccessImpl.js";
import { ServiceDatabaseFileAccessCLI } from "./DatabaseFileAccess"; import { ServiceDatabaseFileAccessCLI } from "./DatabaseFileAccess.js";
import { StorageEventManagerCLI } from "@/apps/cli/managers/StorageEventManagerCLI"; import { StorageEventManagerCLI } from "@/apps/cli/managers/StorageEventManagerCLI.js";
import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule"; import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule.js";
import type { IgnoreRules } from "./IgnoreRules"; import type { IgnoreRules } from "./IgnoreRules.js";
import { createFileReflectionProvenance } from "@/serviceModules/FileReflectionProvenance"; import { createFileReflectionProvenance } from "@/serviceModules/FileReflectionProvenance.js";
/** /**
* Initialize service modules for CLI version * Initialize service modules for CLI version
@@ -1,8 +1,8 @@
import { import {
ServiceDatabaseFileAccessBase, ServiceDatabaseFileAccessBase,
type ServiceDatabaseFileAccessDependencies, type ServiceDatabaseFileAccessDependencies,
} from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceDatabaseFileAccessBase"; } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceDatabaseFileAccessBase.js";
import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess"; import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess.js";
/** /**
* CLI-specific implementation of ServiceDatabaseFileAccess * CLI-specific implementation of ServiceDatabaseFileAccess
+2 -2
View File
@@ -1,5 +1,5 @@
import { FileAccessBase, type FileAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/FileAccessBase"; import { FileAccessBase, type FileAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/FileAccessBase.js";
import { NodeFileSystemAdapter } from "@/apps/cli/adapters/NodeFileSystemAdapter"; import { NodeFileSystemAdapter } from "@/apps/cli/adapters/NodeFileSystemAdapter.js";
import { LOG_LEVEL_NOTICE } from "octagonal-wheels/common/logger"; import { LOG_LEVEL_NOTICE } from "octagonal-wheels/common/logger";
/** /**
+2 -2
View File
@@ -1,6 +1,6 @@
import { Minimatch } from "minimatch"; import { Minimatch } from "minimatch";
import { fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, path } from "@vrtmrz/livesync-commonlib/node.js";
import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput"; import type { CliDiagnosticReporter } from "@/apps/cli/cliOutput.js";
/** /**
* Loads and evaluates ignore rules from `.livesync/ignore` inside the vault. * Loads and evaluates ignore rules from `.livesync/ignore` inside the vault.
@@ -1,4 +1,4 @@
import { fsPromises as fs, os, path } from "@vrtmrz/livesync-commonlib/node"; import { fsPromises as fs, os, path } from "@vrtmrz/livesync-commonlib/node.js";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
const minimatchStats = vi.hoisted(() => ({ constructions: 0 })); const minimatchStats = vi.hoisted(() => ({ constructions: 0 }));
@@ -1,5 +1,5 @@
import { ServiceFileAccessBase, type StorageAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceFileAccessBase"; import { ServiceFileAccessBase, type StorageAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceFileAccessBase.js";
import { NodeFileSystemAdapter } from "@/apps/cli/adapters/NodeFileSystemAdapter"; import { NodeFileSystemAdapter } from "@/apps/cli/adapters/NodeFileSystemAdapter.js";
/** /**
* CLI-specific implementation of ServiceFileAccess * CLI-specific implementation of ServiceFileAccess
+10 -10
View File
@@ -1,14 +1,14 @@
import { LOG_LEVEL_NOTICE, LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/logger"; import { LOG_LEVEL_NOTICE, LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/logger.js";
import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase"; import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase.js";
import type { IKeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService"; import type { IKeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { ServiceBase } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase"; import { ServiceBase } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase.js";
import type { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService"; import type { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService.js";
import type { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService"; import type { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService.js";
import type { IVaultService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService"; import type { IVaultService } from "@vrtmrz/livesync-commonlib/compat/services/base/IService.js";
import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase"; import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
import { createInstanceLogFunction } from "@vrtmrz/livesync-commonlib/compat/services/lib/logUtils"; import { createInstanceLogFunction } from "@vrtmrz/livesync-commonlib/compat/services/lib/logUtils.js";
import { fs as nodeFs, path as nodePath } from "@vrtmrz/livesync-commonlib/node"; import { fs as nodeFs, path as nodePath } from "@vrtmrz/livesync-commonlib/node.js";
const NODE_KV_TYPED_KEY = "__nodeKvType"; const NODE_KV_TYPED_KEY = "__nodeKvType";
const NODE_KV_VALUES_KEY = "values"; const NODE_KV_VALUES_KEY = "values";
@@ -1,5 +1,5 @@
import { describe, expect, it, vi } from "vitest"; import { describe, expect, it, vi } from "vitest";
import { createServiceContext } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase"; import { createServiceContext } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase.js";
import type { NodeKeyValueDBDependencies } from "./NodeKeyValueDBService"; import type { NodeKeyValueDBDependencies } from "./NodeKeyValueDBService";
import { NodeKeyValueDBService } from "./NodeKeyValueDBService"; import { NodeKeyValueDBService } from "./NodeKeyValueDBService";
+2 -2
View File
@@ -1,5 +1,5 @@
import { fs as nodeFs, path as nodePath } from "@vrtmrz/livesync-commonlib/node"; import { fs as nodeFs, path as nodePath } from "@vrtmrz/livesync-commonlib/node.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
type LocalStorageShape = { type LocalStorageShape = {
getItem(key: string): string | null; getItem(key: string): string | null;
@@ -1,4 +1,4 @@
import { fs, os, path } from "@vrtmrz/livesync-commonlib/node"; import { fs, os, path } from "@vrtmrz/livesync-commonlib/node.js";
import { afterEach, describe, expect, it } from "vitest"; import { afterEach, describe, expect, it } from "vitest";
import { import {
clearNodeLocalStorage, clearNodeLocalStorage,
+3 -3
View File
@@ -1,6 +1,6 @@
import { eventHub } from "@/common/events"; import { eventHub } from "@/common/events.js";
import { translateLiveSyncMessage } from "@/common/translation"; import { translateLiveSyncMessage } from "@/common/translation.js";
import { ServiceContext, type StandardIo } from "@vrtmrz/livesync-commonlib/context"; import { ServiceContext, type StandardIo } from "@vrtmrz/livesync-commonlib/context.js";
/** Host capabilities owned by one Self-hosted LiveSync CLI composition. */ /** Host capabilities owned by one Self-hosted LiveSync CLI composition. */
export class NodeServiceContext extends ServiceContext { export class NodeServiceContext extends ServiceContext {
@@ -9,7 +9,7 @@ import {
} from "../../../../test/contracts/serviceContext"; } from "../../../../test/contracts/serviceContext";
import { NodeServiceContext } from "./NodeServiceContext"; import { NodeServiceContext } from "./NodeServiceContext";
import { NodeServiceHub } from "./NodeServiceHub"; import { NodeServiceHub } from "./NodeServiceHub";
import type { StandardIo } from "@vrtmrz/livesync-commonlib/context"; import type { StandardIo } from "@vrtmrz/livesync-commonlib/context.js";
const TRANSLATION_KEY = "Replicator.Message.InitialiseFatalError"; const TRANSLATION_KEY = "Replicator.Message.InitialiseFatalError";
+29 -29
View File
@@ -1,36 +1,36 @@
import type { AppLifecycleServiceDependencies } from "@vrtmrz/livesync-commonlib/compat/services/base/AppLifecycleService"; import type { AppLifecycleServiceDependencies } from "@vrtmrz/livesync-commonlib/compat/services/base/AppLifecycleService.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { ConfigServiceBrowserCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/browser/ConfigServiceBrowserCompat"; import { ConfigServiceBrowserCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/browser/ConfigServiceBrowserCompat.js";
import type { import type {
ComponentHasResult, ComponentHasResult,
SvelteDialogManager, SvelteDialogManager,
} from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog"; } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog.js";
import { UIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/UIService"; import { UIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/UIService.js";
import { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService"; import { InjectableAppLifecycleService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableAppLifecycleService.js";
import { InjectableConflictService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableConflictService"; import { InjectableConflictService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableConflictService.js";
import { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService"; import { InjectableDatabaseEventService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableDatabaseEventService.js";
import { InjectableFileProcessingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableFileProcessingService"; import { InjectableFileProcessingService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableFileProcessingService.js";
import { PathServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectablePathService"; import { PathServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectablePathService.js";
import { InjectableRemoteService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableRemoteService"; import { InjectableRemoteService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableRemoteService.js";
import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService"; import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService.js";
import { InjectableReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicatorService"; import { InjectableReplicatorService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicatorService.js";
import { InjectableTestService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTestService"; import { InjectableTestService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTestService.js";
import { InjectableTweakValueService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTweakValueService"; import { InjectableTweakValueService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableTweakValueService.js";
import { InjectableVaultServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableVaultService"; import { InjectableVaultServiceCompat } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableVaultService.js";
import { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService"; import { ControlService } from "@vrtmrz/livesync-commonlib/compat/services/base/ControlService.js";
import { HeadlessAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/headless/HeadlessAPIService"; import { HeadlessAPIService } from "@vrtmrz/livesync-commonlib/compat/services/implements/headless/HeadlessAPIService.js";
import { NodeKeyValueDBService } from "./NodeKeyValueDBService"; import { NodeKeyValueDBService } from "./NodeKeyValueDBService.js";
import { NodeSettingService } from "./NodeSettingService"; import { NodeSettingService } from "./NodeSettingService.js";
import { DatabaseService } from "@vrtmrz/livesync-commonlib/compat/services/base/DatabaseService"; import { DatabaseService } from "@vrtmrz/livesync-commonlib/compat/services/base/DatabaseService.js";
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { path as nodePath } from "@vrtmrz/livesync-commonlib/node"; import { path as nodePath } from "@vrtmrz/livesync-commonlib/node.js";
import type { KeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/KeyValueDBService"; import type { KeyValueDBService } from "@vrtmrz/livesync-commonlib/compat/services/base/KeyValueDBService.js";
import { PouchDB } from "@/apps/cli/lib/pouchdb-node"; import { PouchDB } from "@/apps/cli/lib/pouchdb-node.js";
import { NodeServiceContext } from "./NodeServiceContext"; import { NodeServiceContext } from "./NodeServiceContext.js";
import { setLang } from "@/common/translation"; import { setLang } from "@/common/translation.js";
export { NodeServiceContext } from "./NodeServiceContext"; export { NodeServiceContext } from "./NodeServiceContext.js";
class NodeAppLifecycleService<T extends ServiceContext> extends InjectableAppLifecycleService<T> { class NodeAppLifecycleService<T extends ServiceContext> extends InjectableAppLifecycleService<T> {
constructor(context: T, dependencies: AppLifecycleServiceDependencies) { constructor(context: T, dependencies: AppLifecycleServiceDependencies) {
+7 -7
View File
@@ -1,15 +1,15 @@
import { EVENT_SETTING_SAVED } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents"; import { EVENT_SETTING_SAVED } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents.js";
import { EVENT_REQUEST_RELOAD_SETTING_TAB } from "@/common/events"; import { EVENT_REQUEST_RELOAD_SETTING_TAB } from "@/common/events.js";
import { handlers } from "@vrtmrz/livesync-commonlib/compat/services/lib/HandlerUtils"; import { handlers } from "@vrtmrz/livesync-commonlib/compat/services/lib/HandlerUtils.js";
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { SettingService, type SettingServiceDependencies } from "@vrtmrz/livesync-commonlib/compat/services/base/SettingService"; import { SettingService, type SettingServiceDependencies } from "@vrtmrz/livesync-commonlib/compat/services/base/SettingService.js";
import { import {
configureNodeLocalStorage, configureNodeLocalStorage,
deleteNodeLocalStorageItem, deleteNodeLocalStorageItem,
getNodeLocalStorageItem, getNodeLocalStorageItem,
setNodeLocalStorageItem, setNodeLocalStorageItem,
} from "./NodeLocalStorage"; } from "./NodeLocalStorage.js";
export class NodeSettingService<T extends ServiceContext> extends SettingService<T> { export class NodeSettingService<T extends ServiceContext> extends SettingService<T> {
constructor(context: T, dependencies: SettingServiceDependencies, storagePath: string) { constructor(context: T, dependencies: SettingServiceDependencies, storagePath: string) {
+4 -4
View File
@@ -1,7 +1,7 @@
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString"; import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString.js";
import { activateRemoteConfiguration } from "@vrtmrz/livesync-commonlib/remote-configurations"; import { activateRemoteConfiguration } from "@vrtmrz/livesync-commonlib/remote-configurations.js";
import type { CLICommand } from "./commands/types"; import type { CLICommand } from "./commands/types.js";
const SETTINGS_WRITE_COMMANDS = new Set<CLICommand>([ const SETTINGS_WRITE_COMMANDS = new Set<CLICommand>([
"setup", "setup",
@@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest"; import { describe, expect, it } from "vitest";
import { DEFAULT_SETTINGS, type ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { DEFAULT_SETTINGS, type ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { activateRemoteConfiguration } from "@vrtmrz/livesync-commonlib/remote-configurations"; import { activateRemoteConfiguration } from "@vrtmrz/livesync-commonlib/remote-configurations.js";
import { import {
applyStoredSetting, applyStoredSetting,
changedSettingKeys, changedSettingKeys,
@@ -1,11 +1,11 @@
#!/usr/bin/env node #!/usr/bin/env node
import { RTCPeerConnection } from "werift"; import { RTCPeerConnection } from "werift";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { createNodeStandardIo } from "@vrtmrz/livesync-commonlib/node"; import { createNodeStandardIo } from "@vrtmrz/livesync-commonlib/node.js";
import { writeStderrLine } from "@/apps/cli/cliOutput"; import { writeStderrLine } from "@/apps/cli/cliOutput.js";
import { main, type CliCommandRunner } from "@/apps/cli/main"; import { main, type CliCommandRunner } from "@/apps/cli/main.js";
import { parseTimeoutSeconds } from "@/apps/cli/commands/p2p"; import { parseTimeoutSeconds } from "@/apps/cli/commands/p2p.js";
import { runP2PReplicatorReplacementProbe } from "./p2p-replicator-replacement"; import { runP2PReplicatorReplacementProbe } from "./p2p-replicator-replacement.js";
if ( if (
typeof (compatGlobal as unknown as Record<string, unknown>).RTCPeerConnection === "undefined" && typeof (compatGlobal as unknown as Record<string, unknown>).RTCPeerConnection === "undefined" &&
@@ -1,8 +1,8 @@
import type { FilePathWithPrefix } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePathWithPrefix } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator"; import { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import type { CLICommandContext } from "@/apps/cli/commands/types"; import type { CLICommandContext } from "@/apps/cli/commands/types.js";
import { openP2PHost } from "@/apps/cli/commands/p2p"; import { openP2PHost } from "@/apps/cli/commands/p2p.js";
const DEFAULT_NOTE_PATH = "p2p-replicator-replacement.md"; const DEFAULT_NOTE_PATH = "p2p-replicator-replacement.md";
const DEFAULT_NOTE_CONTENT = "Replicated after replacing the active P2P replicator."; const DEFAULT_NOTE_CONTENT = "Replicated after replacing the active P2P replicator.";
+2 -2
View File
@@ -15,8 +15,8 @@ export async function initSettingsFile(settingsFile: string): Promise<void> {
*/ */
export async function generateSetupUriFromSettings(settingsFile: string, setupPassphrase: string): Promise<string> { export async function generateSetupUriFromSettings(settingsFile: string, setupPassphrase: string): Promise<string> {
const script = [ const script = [
"import { fs } from '@vrtmrz/livesync-commonlib/node';", "import { fs } from '@vrtmrz/livesync-commonlib/node.js';",
"import { encodeSettingsToSetupURI } from '@vrtmrz/livesync-commonlib/compat/API/processSetting';", "import { encodeSettingsToSetupURI } from '@vrtmrz/livesync-commonlib/compat/API/processSetting.js';",
"(async () => {", "(async () => {",
" const settingsPath = process.env.SETTINGS_FILE;", " const settingsPath = process.env.SETTINGS_FILE;",
" const passphrase = process.env.SETUP_PASSPHRASE;", " const passphrase = process.env.SETUP_PASSPHRASE;",
@@ -1,10 +1,10 @@
import { createRequire } from "node:module"; import { createRequire } from "node:module";
import { pathToFileURL } from "node:url"; import { pathToFileURL } from "node:url";
import { RTCPeerConnection } from "werift"; import { RTCPeerConnection } from "werift";
import { TrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicator"; import { TrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicator.js";
const requireFromProbe = createRequire(import.meta.url); const requireFromProbe = createRequire(import.meta.url);
const commonlibEntry = requireFromProbe.resolve("@vrtmrz/livesync-commonlib/context"); const commonlibEntry = requireFromProbe.resolve("@vrtmrz/livesync-commonlib/context.js");
const requireFromCommonlib = createRequire(commonlibEntry); const requireFromCommonlib = createRequire(commonlibEntry);
const nostrEntry = requireFromCommonlib.resolve("@trystero-p2p/nostr"); const nostrEntry = requireFromCommonlib.resolve("@trystero-p2p/nostr");
const { getRelaySockets, joinRoom, pauseRelayReconnection } = await import(pathToFileURL(nostrEntry).href); const { getRelaySockets, joinRoom, pauseRelayReconnection } = await import(pathToFileURL(nostrEntry).href);
+1 -1
View File
@@ -1,6 +1,6 @@
import { defaultServerConditions, defaultServerMainFields, defineConfig } from "vite"; import { defaultServerConditions, defaultServerMainFields, defineConfig } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte"; import { svelte } from "@sveltejs/vite-plugin-svelte";
import { fileURLToPath, fs, isBuiltin, path } from "@vrtmrz/livesync-commonlib/node"; import { fileURLToPath, fs, isBuiltin, path } from "@vrtmrz/livesync-commonlib/node.js";
const __dirname = path.dirname(fileURLToPath(import.meta.url)); const __dirname = path.dirname(fileURLToPath(import.meta.url));
const resolve = (...args: string[]) => path.resolve(...args).replace(/\\/g, "/"); const resolve = (...args: string[]) => path.resolve(...args).replace(/\\/g, "/");
const repoRoot = path.resolve(__dirname, "../../.."); const repoRoot = path.resolve(__dirname, "../../..");
+1 -1
View File
@@ -1,4 +1,4 @@
import type { LOG_LEVEL } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { LOG_LEVEL } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
/** Diagnostic output supplied by the Webapp host. */ /** Diagnostic output supplied by the Webapp host. */
export type WebAppLog = (message: unknown, level: LOG_LEVEL, key?: string) => void; export type WebAppLog = (message: unknown, level: LOG_LEVEL, key?: string) => void;
+13 -13
View File
@@ -1,32 +1,32 @@
/** Browser runtime for Self-hosted LiveSync over the File System Access API. */ /** Browser runtime for Self-hosted LiveSync over the File System Access API. */
import { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import { ServiceContext, type LiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context"; import { ServiceContext, type LiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context.js";
import { initialiseServiceModulesFSAPI, type FSAPIServiceModules } from "./serviceModules/FSAPIServiceModules"; import { initialiseServiceModulesFSAPI, type FSAPIServiceModules } from "./serviceModules/FSAPIServiceModules.js";
import { import {
LOG_LEVEL_INFO, LOG_LEVEL_INFO,
LOG_LEVEL_NOTICE, LOG_LEVEL_NOTICE,
LOG_LEVEL_VERBOSE, LOG_LEVEL_VERBOSE,
type LOG_LEVEL, type LOG_LEVEL,
type ObsidianLiveSyncSettings, type ObsidianLiveSyncSettings,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { import {
collectFilesOnStorage, collectFilesOnStorage,
updateToDatabase, updateToDatabase,
useOfflineScanner, useOfflineScanner,
} from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner"; } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/offlineScanner.js";
import { useRedFlagFeatures } from "@/serviceFeatures/redFlag"; import { useRedFlagFeatures } from "@/serviceFeatures/redFlag.js";
import { useCheckRemoteSize } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/checkRemoteSize"; import { useCheckRemoteSize } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/checkRemoteSize.js";
import { useRemoteConfiguration } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/remoteConfig"; import { useRemoteConfiguration } from "@vrtmrz/livesync-commonlib/compat/serviceFeatures/remoteConfig.js";
import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature"; import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature.js";
import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult"; import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { import {
createLiveSyncBrowserServiceHub, createLiveSyncBrowserServiceHub,
type LiveSyncBrowserServiceHub, type LiveSyncBrowserServiceHub,
type LiveSyncBrowserServiceHubOptions, type LiveSyncBrowserServiceHubOptions,
} from "@/apps/browser/createLiveSyncBrowserServiceHub"; } from "@/apps/browser/createLiveSyncBrowserServiceHub.js";
import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost"; import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost.js";
const SETTINGS_DIR = ".livesync"; const SETTINGS_DIR = ".livesync";
const SETTINGS_FILE = "settings.json"; const SETTINGS_FILE = "settings.json";
@@ -1,6 +1,6 @@
import type { FilePath, UXFileInfoStub, UXFolderInfo } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXFileInfoStub, UXFolderInfo } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IConversionAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IConversionAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes"; import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes.js";
/** /**
* Conversion adapter implementation for FileSystem API * Conversion adapter implementation for FileSystem API
@@ -1,13 +1,13 @@
import { LOG_LEVEL_NOTICE, type FilePath, type UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { LOG_LEVEL_NOTICE, type FilePath, type UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IFileSystemAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IFileSystemAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import { FSAPIPathAdapter } from "./FSAPIPathAdapter"; import { FSAPIPathAdapter } from "./FSAPIPathAdapter.js";
import { FSAPITypeGuardAdapter } from "./FSAPITypeGuardAdapter"; import { FSAPITypeGuardAdapter } from "./FSAPITypeGuardAdapter.js";
import { FSAPIConversionAdapter } from "./FSAPIConversionAdapter"; import { FSAPIConversionAdapter } from "./FSAPIConversionAdapter.js";
import { FileSystemAccessStorageAdapter } from "@vrtmrz/livesync-commonlib/browser"; import { FileSystemAccessStorageAdapter } from "@vrtmrz/livesync-commonlib/browser.js";
import { FSAPIVaultAdapter } from "./FSAPIVaultAdapter"; import { FSAPIVaultAdapter } from "./FSAPIVaultAdapter.js";
import type { FSAPIFile, FSAPIFolder, FSAPIStat } from "./FSAPITypes"; import type { FSAPIFile, FSAPIFolder, FSAPIStat } from "./FSAPITypes.js";
import { shareRunningResult } from "octagonal-wheels/concurrency/lock_v2"; import { shareRunningResult } from "octagonal-wheels/concurrency/lock_v2";
import type { WebAppLog } from "@/apps/webapp/WebAppLog"; import type { WebAppLog } from "@/apps/webapp/WebAppLog.js";
/** /**
* Complete file system adapter implementation for FileSystem API * Complete file system adapter implementation for FileSystem API
+3 -3
View File
@@ -1,6 +1,6 @@
import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IPathAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IPathAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { FSAPIFile } from "./FSAPITypes"; import type { FSAPIFile } from "./FSAPITypes.js";
/** /**
* Path adapter implementation for FileSystem API * Path adapter implementation for FileSystem API
@@ -1,9 +1,9 @@
import { describe, expect, it, vi } from "vitest"; import { describe, expect, it, vi } from "vitest";
import { storageAdapterContractCases } from "@/apps/_test/storageAdapterContract"; import { storageAdapterContractCases } from "@/apps/_test/storageAdapterContract";
import { FSAPIFileSystemAdapter } from "./FSAPIFileSystemAdapter"; import { FSAPIFileSystemAdapter } from "./FSAPIFileSystemAdapter";
import { FileSystemAccessStorageAdapter } from "@vrtmrz/livesync-commonlib/browser"; import { FileSystemAccessStorageAdapter } from "@vrtmrz/livesync-commonlib/browser.js";
import { FSAPIVaultAdapter } from "./FSAPIVaultAdapter"; import { FSAPIVaultAdapter } from "./FSAPIVaultAdapter";
import { LOG_LEVEL_NOTICE } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { LOG_LEVEL_NOTICE } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
class MemoryFileHandle { class MemoryFileHandle {
readonly kind = "file"; readonly kind = "file";
@@ -1,5 +1,5 @@
import type { ITypeGuardAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { ITypeGuardAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes"; import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes.js";
/** /**
* Type guard adapter implementation for FileSystem API * Type guard adapter implementation for FileSystem API
+1 -1
View File
@@ -1,4 +1,4 @@
import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXStat } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
/** /**
* FileSystem API file representation * FileSystem API file representation
@@ -1,6 +1,6 @@
import type { FilePath, UXDataWriteOptions } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXDataWriteOptions } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IVaultAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters"; import type { IVaultAdapter } from "@vrtmrz/livesync-commonlib/compat/serviceModules/adapters.js";
import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes"; import type { FSAPIFile, FSAPIFolder } from "./FSAPITypes.js";
/** /**
* Vault adapter implementation for FileSystem API * Vault adapter implementation for FileSystem API
+4 -4
View File
@@ -1,10 +1,10 @@
import { createNativeElement } from "@/apps/browserDom"; import { createNativeElement } from "@/apps/browserDom.js";
import { compatGlobal, _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal, _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { mount } from "svelte"; import { mount } from "svelte";
import { WebAppRuntime, type WebAppRuntimeStatusKind } from "./WebAppRuntime"; import { WebAppRuntime, type WebAppRuntimeStatusKind } from "./WebAppRuntime.js";
import WebAppP2P from "./WebAppP2P.svelte"; import WebAppP2P from "./WebAppP2P.svelte";
import { VaultHistoryStore, type VaultHistoryItem } from "./vaultSelector"; import { VaultHistoryStore, type VaultHistoryItem } from "./vaultSelector.js";
const historyStore = new VaultHistoryStore(); const historyStore = new VaultHistoryStore();
let runtime: WebAppRuntime | null = null; let runtime: WebAppRuntime | null = null;
@@ -1,6 +1,6 @@
import type { FilePath, UXFileInfoStub, UXInternalFileInfoStub } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePath, UXFileInfoStub, UXInternalFileInfoStub } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { FileEventItem } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FileEventItem } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { IStorageEventManagerAdapter } from "@vrtmrz/livesync-commonlib/compat/managers/adapters"; import type { IStorageEventManagerAdapter } from "@vrtmrz/livesync-commonlib/compat/managers/adapters.js";
import type { import type {
IStorageEventTypeGuardAdapter, IStorageEventTypeGuardAdapter,
IStorageEventPersistenceAdapter, IStorageEventPersistenceAdapter,
@@ -8,12 +8,12 @@ import type {
IStorageEventStatusAdapter, IStorageEventStatusAdapter,
IStorageEventConverterAdapter, IStorageEventConverterAdapter,
IStorageEventWatchHandlers, IStorageEventWatchHandlers,
} from "@vrtmrz/livesync-commonlib/compat/managers/adapters"; } from "@vrtmrz/livesync-commonlib/compat/managers/adapters.js";
import type { FileEventItemSentinel } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager"; import type { FileEventItemSentinel } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager.js";
import type { FSAPIFile, FSAPIFolder } from "@/apps/webapp/adapters/FSAPITypes"; import type { FSAPIFile, FSAPIFolder } from "@/apps/webapp/adapters/FSAPITypes.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { LOG_LEVEL_INFO, LOG_LEVEL_NOTICE, LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { LOG_LEVEL_INFO, LOG_LEVEL_NOTICE, LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { WebAppLog } from "@/apps/webapp/WebAppLog"; import type { WebAppLog } from "@/apps/webapp/WebAppLog.js";
type FileSystemObserverRecord = { type FileSystemObserverRecord = {
changedHandle?: FileSystemFileHandle | FileSystemDirectoryHandle; changedHandle?: FileSystemFileHandle | FileSystemDirectoryHandle;
@@ -1,7 +1,7 @@
import { StorageEventManagerBase, type StorageEventManagerBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager"; import { StorageEventManagerBase, type StorageEventManagerBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/managers/StorageEventManager.js";
import { FSAPIStorageEventManagerAdapter } from "./FSAPIStorageEventManagerAdapter"; import { FSAPIStorageEventManagerAdapter } from "./FSAPIStorageEventManagerAdapter.js";
import type { IMinimumLiveSyncCommands, LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { IMinimumLiveSyncCommands, LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
export class StorageEventManagerFSAPI extends StorageEventManagerBase<FSAPIStorageEventManagerAdapter> { export class StorageEventManagerFSAPI extends StorageEventManagerBase<FSAPIStorageEventManagerAdapter> {
core: LiveSyncBaseCore<ServiceContext, IMinimumLiveSyncCommands>; core: LiveSyncBaseCore<ServiceContext, IMinimumLiveSyncCommands>;
@@ -1,8 +1,8 @@
import { import {
ServiceDatabaseFileAccessBase, ServiceDatabaseFileAccessBase,
type ServiceDatabaseFileAccessDependencies, type ServiceDatabaseFileAccessDependencies,
} from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceDatabaseFileAccessBase"; } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceDatabaseFileAccessBase.js";
import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess"; import type { DatabaseFileAccess } from "@vrtmrz/livesync-commonlib/compat/interfaces/DatabaseFileAccess.js";
/** /**
* FileSystem API-specific implementation of ServiceDatabaseFileAccess * FileSystem API-specific implementation of ServiceDatabaseFileAccess
@@ -1,16 +1,16 @@
import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub"; import type { InjectableServiceHub } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableServiceHub.js";
import { ServiceRebuilder } from "@vrtmrz/livesync-commonlib/compat/serviceModules/Rebuilder"; import { ServiceRebuilder } from "@vrtmrz/livesync-commonlib/compat/serviceModules/Rebuilder.js";
import { StorageAccessManager } from "@vrtmrz/livesync-commonlib/compat/managers/StorageProcessingManager"; import { StorageAccessManager } from "@vrtmrz/livesync-commonlib/compat/managers/StorageProcessingManager.js";
import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context"; import type { ServiceContext } from "@vrtmrz/livesync-commonlib/context.js";
import { FileAccessFSAPI } from "./FileAccessFSAPI"; import { FileAccessFSAPI } from "./FileAccessFSAPI.js";
import { ServiceFileAccessFSAPI } from "./ServiceFileAccessImpl"; import { ServiceFileAccessFSAPI } from "./ServiceFileAccessImpl.js";
import { ServiceDatabaseFileAccessFSAPI } from "./DatabaseFileAccess"; import { ServiceDatabaseFileAccessFSAPI } from "./DatabaseFileAccess.js";
import { StorageEventManagerFSAPI } from "@/apps/webapp/managers/StorageEventManagerFSAPI"; import { StorageEventManagerFSAPI } from "@/apps/webapp/managers/StorageEventManagerFSAPI.js";
import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule"; import type { ServiceModules } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule.js";
import { ServiceFileHandler } from "@/serviceModules/FileHandler"; import { ServiceFileHandler } from "@/serviceModules/FileHandler.js";
import { createFileReflectionProvenance } from "@/serviceModules/FileReflectionProvenance"; import { createFileReflectionProvenance } from "@/serviceModules/FileReflectionProvenance.js";
export interface FSAPIServiceModules extends ServiceModules { export interface FSAPIServiceModules extends ServiceModules {
vaultAccess: FileAccessFSAPI; vaultAccess: FileAccessFSAPI;
@@ -1,5 +1,5 @@
import { FileAccessBase, type FileAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/FileAccessBase"; import { FileAccessBase, type FileAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/FileAccessBase.js";
import { FSAPIFileSystemAdapter } from "@/apps/webapp/adapters/FSAPIFileSystemAdapter"; import { FSAPIFileSystemAdapter } from "@/apps/webapp/adapters/FSAPIFileSystemAdapter.js";
/** /**
* FileSystem API-specific implementation of FileAccessBase * FileSystem API-specific implementation of FileAccessBase
@@ -1,5 +1,5 @@
import { ServiceFileAccessBase, type StorageAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceFileAccessBase"; import { ServiceFileAccessBase, type StorageAccessBaseDependencies } from "@vrtmrz/livesync-commonlib/compat/serviceModules/ServiceFileAccessBase.js";
import { FSAPIFileSystemAdapter } from "@/apps/webapp/adapters/FSAPIFileSystemAdapter"; import { FSAPIFileSystemAdapter } from "@/apps/webapp/adapters/FSAPIFileSystemAdapter.js";
/** /**
* FileSystem API-specific implementation of ServiceFileAccess * FileSystem API-specific implementation of ServiceFileAccess
+1 -1
View File
@@ -1,4 +1,4 @@
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
const HANDLE_DB_NAME = "livesync-webapp-handles"; const HANDLE_DB_NAME = "livesync-webapp-handles";
const HANDLE_STORE_NAME = "handles"; const HANDLE_STORE_NAME = "handles";
+1 -1
View File
@@ -1,6 +1,6 @@
import { defineConfig } from "vite"; import { defineConfig } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte"; import { svelte } from "@sveltejs/vite-plugin-svelte";
import { fileURLToPath, fs, path } from "@vrtmrz/livesync-commonlib/node"; import { fileURLToPath, fs, path } from "@vrtmrz/livesync-commonlib/node.js";
const __dirname = path.dirname(fileURLToPath(import.meta.url)); const __dirname = path.dirname(fileURLToPath(import.meta.url));
const repoRoot = path.resolve(__dirname, "../../.."); const repoRoot = path.resolve(__dirname, "../../..");
+1 -1
View File
@@ -1,5 +1,5 @@
<script lang="ts"> <script lang="ts">
import type { P2PServerInfo } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer"; import type { P2PServerInfo } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer.js";
import qrcode from "qrcode-generator"; import qrcode from "qrcode-generator";
import { onDestroy, tick } from "svelte"; import { onDestroy, tick } from "svelte";
+4 -4
View File
@@ -1,12 +1,12 @@
import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { import {
EVENT_SERVER_STATUS, EVENT_SERVER_STATUS,
type P2PServerInfo, type P2PServerInfo,
} from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer"; } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer.js";
import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase"; import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
import { WEBPEER_SETTINGS_KEY } from "./WebPeerPersistence"; import { WEBPEER_SETTINGS_KEY } from "./WebPeerPersistence.js";
import { WebPeerRuntime } from "./WebPeerRuntime"; import { WebPeerRuntime } from "./WebPeerRuntime.js";
export const P2P_CHECK_SYSTEM_VAULT_NAME = "p2p-livesync-connection-check"; export const P2P_CHECK_SYSTEM_VAULT_NAME = "p2p-livesync-connection-check";
+5 -5
View File
@@ -1,13 +1,13 @@
import { encodeSettingsToSetupURI } from "@vrtmrz/livesync-commonlib/compat/API/processSetting"; import { encodeSettingsToSetupURI } from "@vrtmrz/livesync-commonlib/compat/API/processSetting.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { import {
P2P_DEFAULT_SETTINGS, P2P_DEFAULT_SETTINGS,
PREFERRED_BASE, PREFERRED_BASE,
createNewVaultSettings, createNewVaultSettings,
type ObsidianLiveSyncSettings, type ObsidianLiveSyncSettings,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { generateP2PRoomId } from "@vrtmrz/livesync-commonlib/compat/common/utils"; import { generateP2PRoomId } from "@vrtmrz/livesync-commonlib/compat/common/utils.js";
import { upsertRemoteConfigurationInPlace } from "@vrtmrz/livesync-commonlib/remote-configurations"; import { upsertRemoteConfigurationInPlace } from "@vrtmrz/livesync-commonlib/remote-configurations.js";
export const P2P_CHECK_APP_ID = "self-hosted-livesync-p2p-check-v1"; export const P2P_CHECK_APP_ID = "self-hosted-livesync-p2p-check-v1";
export const P2P_CHECK_REMOTE_NAME = "P2P connection check"; export const P2P_CHECK_REMOTE_NAME = "P2P connection check";
+1 -1
View File
@@ -1,4 +1,4 @@
import type { P2PServerInfo } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer"; import type { P2PServerInfo } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/TrysteroReplicatorP2PServer.js";
export const P2P_CHECK_OBSERVATION_MILLISECONDS = 60_000; export const P2P_CHECK_OBSERVATION_MILLISECONDS = 60_000;
+1 -1
View File
@@ -1,6 +1,6 @@
<script lang="ts"> <script lang="ts">
import { Menu } from "@/apps/browser/BrowserMenu"; import { Menu } from "@/apps/browser/BrowserMenu";
import { getDialogContext } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog"; import { getDialogContext } from "@vrtmrz/livesync-commonlib/compat/services/implements/base/SvelteDialog.js";
let result = $state<string | boolean>(""); let result = $state<string | boolean>("");
const context = getDialogContext(); const context = getDialogContext();
+2 -2
View File
@@ -1,5 +1,5 @@
import { LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { LOG_LEVEL_VERBOSE } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { defaultLoggerEnv, setGlobalLogFunction } from "@vrtmrz/livesync-commonlib/compat/common/logger"; import { defaultLoggerEnv, setGlobalLogFunction } from "@vrtmrz/livesync-commonlib/compat/common/logger.js";
import { writable } from "svelte/store"; import { writable } from "svelte/store";
export const logs = writable<string[]>([]); export const logs = writable<string[]>([]);
+2 -2
View File
@@ -2,11 +2,11 @@ import {
DEFAULT_SETTINGS, DEFAULT_SETTINGS,
P2P_DEFAULT_SETTINGS, P2P_DEFAULT_SETTINGS,
REMOTE_P2P, REMOTE_P2P,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase"; import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
import { SimpleStoreIDBv2 } from "octagonal-wheels/databases/SimpleStoreIDBv2"; import { SimpleStoreIDBv2 } from "octagonal-wheels/databases/SimpleStoreIDBv2";
import type { LiveSyncBrowserSettingsPersistence } from "@/apps/browser/createLiveSyncBrowserServiceHub"; import type { LiveSyncBrowserSettingsPersistence } from "@/apps/browser/createLiveSyncBrowserServiceHub.js";
export const WEBPEER_STORE_NAME = "p2p-livesync-web-peer"; export const WEBPEER_STORE_NAME = "p2p-livesync-web-peer";
export const WEBPEER_SETTINGS_KEY = "settings"; export const WEBPEER_SETTINGS_KEY = "settings";
+14 -14
View File
@@ -1,23 +1,23 @@
import { type P2PSyncSetting, SETTING_KEY_P2P_DEVICE_NAME } from "@vrtmrz/livesync-commonlib/compat/common/types"; import { type P2PSyncSetting, SETTING_KEY_P2P_DEVICE_NAME } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { EVENT_LAYOUT_READY } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents"; import { EVENT_LAYOUT_READY } from "@vrtmrz/livesync-commonlib/compat/events/coreEvents.js";
import type { PeerStatus } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/P2PReplicatorPaneCommon"; import type { PeerStatus } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/P2PReplicatorPaneCommon.js";
import { P2PLogCollector } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/P2PLogCollector"; import { P2PLogCollector } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/P2PLogCollector.js";
import type { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator"; import type { LiveSyncTrysteroReplicator } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/LiveSyncTrysteroReplicator.js";
import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult"; import type { UseP2PReplicatorResult } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/UseP2PReplicatorResult.js";
import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature"; import { useP2PReplicatorFeature } from "@vrtmrz/livesync-commonlib/compat/replication/trystero/useP2PReplicatorFeature.js";
import { ServiceContext, type LiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context"; import { ServiceContext, type LiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context.js";
import { unique } from "octagonal-wheels/collection"; import { unique } from "octagonal-wheels/collection";
import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase"; import type { SimpleStore } from "octagonal-wheels/databases/SimpleStoreBase";
import { import {
createLiveSyncBrowserServiceHub, createLiveSyncBrowserServiceHub,
type LiveSyncBrowserServiceHub, type LiveSyncBrowserServiceHub,
} from "@/apps/browser/createLiveSyncBrowserServiceHub"; } from "@/apps/browser/createLiveSyncBrowserServiceHub.js";
import { Menu } from "@/apps/browser/BrowserMenu"; import { Menu } from "@/apps/browser/BrowserMenu.js";
import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost"; import type { P2PReplicatorPaneHost } from "@/features/P2PSync/P2PReplicator/P2PReplicatorPaneHost.js";
import { translateLiveSyncMessage } from "@/common/translation"; import { translateLiveSyncMessage } from "@/common/translation.js";
import { WEBPEER_STORE_NAME, createWebPeerPersistence } from "./WebPeerPersistence"; import { WEBPEER_STORE_NAME, createWebPeerPersistence } from "./WebPeerPersistence.js";
export interface WebPeerRuntimeOptions { export interface WebPeerRuntimeOptions {
context?: ServiceContext; context?: ServiceContext;
+1 -1
View File
@@ -1,4 +1,4 @@
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { mount } from "svelte"; import { mount } from "svelte";
import P2PCheck from "./P2PCheck.svelte"; import P2PCheck from "./P2PCheck.svelte";
+1 -1
View File
@@ -2,7 +2,7 @@ import { mount } from "svelte";
import "./theme.css"; import "./theme.css";
import "./app.css"; import "./app.css";
import App from "./App.svelte"; import App from "./App.svelte";
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
const app = mount(App, { const app = mount(App, {
target: _activeDocument.getElementById("app")!, target: _activeDocument.getElementById("app")!,
+1 -1
View File
@@ -1,7 +1,7 @@
import { mount } from "svelte"; import { mount } from "svelte";
import "./app.css"; import "./app.css";
import App from "./UITest.svelte"; import App from "./UITest.svelte";
import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { _activeDocument } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
const app = mount(App, { const app = mount(App, {
target: _activeDocument.getElementById("app")!, target: _activeDocument.getElementById("app")!,
+1 -1
View File
@@ -1,6 +1,6 @@
import { defineConfig } from "vite"; import { defineConfig } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte"; import { svelte } from "@sveltejs/vite-plugin-svelte";
import { path } from "@vrtmrz/livesync-commonlib/node"; import { path } from "@vrtmrz/livesync-commonlib/node.js";
// https://vite.dev/config/ // https://vite.dev/config/
export default defineConfig({ export default defineConfig({
plugins: [svelte()], plugins: [svelte()],
+1 -1
View File
@@ -1,5 +1,5 @@
import { deleteDB, type IDBPDatabase, openDB } from "idb"; import { deleteDB, type IDBPDatabase, openDB } from "idb";
import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase"; import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase.js";
import { serialized } from "octagonal-wheels/concurrency/lock"; import { serialized } from "octagonal-wheels/concurrency/lock";
import { Logger } from "octagonal-wheels/common/logger"; import { Logger } from "octagonal-wheels/common/logger";
const databaseCache: { [key: string]: IDBPDatabase<unknown> } = {}; const databaseCache: { [key: string]: IDBPDatabase<unknown> } = {};
+2 -2
View File
@@ -1,5 +1,5 @@
import { LOG_LEVEL_VERBOSE, Logger } from "@vrtmrz/livesync-commonlib/compat/common/logger"; import { LOG_LEVEL_VERBOSE, Logger } from "@vrtmrz/livesync-commonlib/compat/common/logger.js";
import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase"; import type { KeyValueDatabase } from "@vrtmrz/livesync-commonlib/compat/interfaces/KeyValueDatabase.js";
import { deleteDB, openDB, type IDBPDatabase } from "idb"; import { deleteDB, openDB, type IDBPDatabase } from "idb";
import { serialized } from "octagonal-wheels/concurrency/lock"; import { serialized } from "octagonal-wheels/concurrency/lock";
+2 -2
View File
@@ -1,7 +1,7 @@
import { Logger } from "octagonal-wheels/common/logger"; import { Logger } from "octagonal-wheels/common/logger";
import { fireAndForget } from "octagonal-wheels/promises"; import { fireAndForget } from "octagonal-wheels/promises";
import { eventHub, EVENT_PLUGIN_UNLOADED } from "./events"; import { eventHub, EVENT_PLUGIN_UNLOADED } from "./events.js";
import type { NecessaryServices } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule"; import type { NecessaryServices } from "@vrtmrz/livesync-commonlib/compat/interfaces/ServiceModule.js";
type PeriodicProcessorHost = NecessaryServices<"API" | "control", never>; type PeriodicProcessorHost = NecessaryServices<"API" | "control", never>;
export class PeriodicProcessor { export class PeriodicProcessor {
_process: () => Promise<unknown>; _process: () => Promise<unknown>;
+1 -1
View File
@@ -1,7 +1,7 @@
import type { import type {
SettingsMigrationReviewReason, SettingsMigrationReviewReason,
SettingsMigrationState, SettingsMigrationState,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
export const DATABASE_COMPATIBILITY_VERSION_KEY = "database-compatibility-version"; export const DATABASE_COMPATIBILITY_VERSION_KEY = "database-compatibility-version";
export const DATABASE_COMPATIBILITY_LEGACY_VERSION_KEY_PREFIX = "obsidian-live-sync-ver"; export const DATABASE_COMPATIBILITY_LEGACY_VERSION_KEY_PREFIX = "obsidian-live-sync-ver";
@@ -1,6 +1,6 @@
import { describe, expect, it, vi } from "vitest"; import { describe, expect, it, vi } from "vitest";
import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService"; import { InjectableReplicationService } from "@vrtmrz/livesync-commonlib/compat/services/implements/injectable/InjectableReplicationService.js";
import { ServiceContext } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase"; import { ServiceContext } from "@vrtmrz/livesync-commonlib/compat/services/base/ServiceBase.js";
import { evaluateCompatibilityPause, legacyDatabaseCompatibilityVersionKey } from "./databaseCompatibility.ts"; import { evaluateCompatibilityPause, legacyDatabaseCompatibilityVersionKey } from "./databaseCompatibility.ts";
function migrationState(overrides: Record<string, unknown> = {}) { function migrationState(overrides: Record<string, unknown> = {}) {
+2 -2
View File
@@ -1,4 +1,4 @@
import { createLiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context"; import { createLiveSyncEventHub } from "@vrtmrz/livesync-commonlib/context.js";
// import type ObsidianLiveSyncPlugin from "../main"; // import type ObsidianLiveSyncPlugin from "../main";
export const EVENT_PLUGIN_LOADED = "plugin-loaded"; export const EVENT_PLUGIN_LOADED = "plugin-loaded";
@@ -43,7 +43,7 @@ declare global {
} }
} }
export * from "@vrtmrz/livesync-commonlib/compat/events/coreEvents"; export * from "@vrtmrz/livesync-commonlib/compat/events/coreEvents.js";
/** /**
* Self-hosted LiveSync's host event channel. * Self-hosted LiveSync's host event channel.
+2 -2
View File
@@ -1,5 +1,5 @@
import type { TFile } from "@/deps"; import type { TFile } from "@/deps.js";
import type { FilePathWithPrefix, LoadedEntry } from "@vrtmrz/livesync-commonlib/compat/common/types"; import type { FilePathWithPrefix, LoadedEntry } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
export const EVENT_REQUEST_SHOW_HISTORY = "show-history"; export const EVENT_REQUEST_SHOW_HISTORY = "show-history";
+2 -2
View File
@@ -1,8 +1,8 @@
import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString"; import { ConnectionStringParser } from "@vrtmrz/livesync-commonlib/compat/common/ConnectionString.js";
import { import {
REMOTE_P2P, REMOTE_P2P,
type ObsidianLiveSyncSettings, type ObsidianLiveSyncSettings,
} from "@vrtmrz/livesync-commonlib/compat/common/types"; } from "@vrtmrz/livesync-commonlib/compat/common/types.js";
/** Returns whether the selected main remote represents the P2P-only setup. */ /** Returns whether the selected main remote represents the P2P-only setup. */
export function isP2PMainRemote(settings: ObsidianLiveSyncSettings): boolean { export function isP2PMainRemote(settings: ObsidianLiveSyncSettings): boolean {
+10 -10
View File
@@ -1,13 +1,13 @@
import { REMOTE_COUCHDB, REMOTE_MINIO } from "@vrtmrz/livesync-commonlib/compat/common/models/setting.const"; import { REMOTE_COUCHDB, REMOTE_MINIO } from "@vrtmrz/livesync-commonlib/compat/common/models/setting.const.js";
import { DEFAULT_SETTINGS, type ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/settings"; import { DEFAULT_SETTINGS, type ObsidianLiveSyncSettings } from "@vrtmrz/livesync-commonlib/settings.js";
import { generateCredentialObject } from "@vrtmrz/livesync-commonlib/compat/replication/httplib"; import { generateCredentialObject } from "@vrtmrz/livesync-commonlib/compat/replication/httplib.js";
import { parseHeaderValues } from "@vrtmrz/livesync-commonlib/compat/common/utils"; import { parseHeaderValues } from "@vrtmrz/livesync-commonlib/compat/common/utils.js";
import { requestToCouchDBWithCredentials } from "./utils"; import { requestToCouchDBWithCredentials } from "./utils.js";
import { LOG_LEVEL_VERBOSE, Logger } from "@vrtmrz/livesync-commonlib/compat/common/logger"; import { LOG_LEVEL_VERBOSE, Logger } from "@vrtmrz/livesync-commonlib/compat/common/logger.js";
import { isCloudantURI } from "@vrtmrz/livesync-commonlib/compat/pouchdb/utils_couchdb"; import { isCloudantURI } from "@vrtmrz/livesync-commonlib/compat/pouchdb/utils_couchdb.js";
import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { compatGlobal } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { manifestVersion, packageVersion } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvVars"; import { manifestVersion, packageVersion } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvVars.js";
import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore"; import type { LiveSyncBaseCore } from "@/LiveSyncBaseCore.js";
function redactObject(obj: Record<string, unknown>, dotted: string, redactedValue = "REDACTED") { function redactObject(obj: Record<string, unknown>, dotted: string, redactedValue = "REDACTED") {
const keys = dotted.split("."); const keys = dotted.split(".");
let current = obj; let current = obj;
+1 -1
View File
@@ -65,7 +65,7 @@ export type I18N_LANGS =
export type MESSAGE = { [key in I18N_LANGS]?: string }; export type MESSAGE = { [key in I18N_LANGS]?: string };
import { Logger } from "octagonal-wheels/common/logger"; import { Logger } from "octagonal-wheels/common/logger";
import type { CommonlibMessageKey } from "@vrtmrz/livesync-commonlib/context"; import type { CommonlibMessageKey } from "@vrtmrz/livesync-commonlib/context.js";
import type { MessageKeys } from "./messages/combinedMessages.dev.ts"; import type { MessageKeys } from "./messages/combinedMessages.dev.ts";
import type { LiveSyncProvisionalMessageKey } from "./messages/LiveSyncProvisionalMessages.ts"; import type { LiveSyncProvisionalMessageKey } from "./messages/LiveSyncProvisionalMessages.ts";
+3 -3
View File
@@ -1,14 +1,14 @@
// Avoid using Obsidian's native function for CLIs. // Avoid using Obsidian's native function for CLIs.
import { getLanguage } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions"; import { getLanguage } from "@vrtmrz/livesync-commonlib/compat/common/coreEnvFunctions.js";
import { import {
commonlibEnglishMessages, commonlibEnglishMessages,
englishMessageTranslator, englishMessageTranslator,
type CommonlibMessageKey, type CommonlibMessageKey,
type MessageTranslator, type MessageTranslator,
} from "@vrtmrz/livesync-commonlib/context"; } from "@vrtmrz/livesync-commonlib/context.js";
import { LOG_KIND_WARNING, notice } from "octagonal-wheels/common/logger"; import { LOG_KIND_WARNING, notice } from "octagonal-wheels/common/logger";
import type { TaggedType } from "octagonal-wheels/common/types"; import type { TaggedType } from "octagonal-wheels/common/types";
import type { AllMessageKeys, I18N_LANGS, LiveSyncCatalogueMessageKey } from "./rosetta"; import type { AllMessageKeys, I18N_LANGS, LiveSyncCatalogueMessageKey } from "./rosetta.js";
import { allMessages } from "./messages/combinedMessages.prod.ts"; import { allMessages } from "./messages/combinedMessages.prod.ts";
import { import {
liveSyncProvisionalEnglishMessages, liveSyncProvisionalEnglishMessages,

Some files were not shown because too many files have changed in this diff Show More