mirror of
https://github.com/vrtmrz/obsidian-livesync.git
synced 2026-04-23 17:38:35 +00:00
Add self-hosted-livesync-cli to src/apps/cli as a headless, and a dedicated version.
This commit is contained in:
28
src/apps/cli/adapters/NodeConversionAdapter.ts
Normal file
28
src/apps/cli/adapters/NodeConversionAdapter.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import * as path from "path";
|
||||
import type { UXFileInfoStub, UXFolderInfo } from "@lib/common/types";
|
||||
import type { IConversionAdapter } from "@lib/serviceModules/adapters";
|
||||
import type { NodeFile, NodeFolder } from "./NodeTypes";
|
||||
|
||||
/**
|
||||
* Conversion adapter implementation for Node.js
|
||||
*/
|
||||
export class NodeConversionAdapter implements IConversionAdapter<NodeFile, NodeFolder> {
|
||||
nativeFileToUXFileInfoStub(file: NodeFile): UXFileInfoStub {
|
||||
return {
|
||||
name: path.basename(file.path),
|
||||
path: file.path,
|
||||
stat: file.stat,
|
||||
isFolder: false,
|
||||
};
|
||||
}
|
||||
|
||||
nativeFolderToUXFolder(folder: NodeFolder): UXFolderInfo {
|
||||
return {
|
||||
name: path.basename(folder.path),
|
||||
path: folder.path,
|
||||
isFolder: true,
|
||||
children: [],
|
||||
parent: path.dirname(folder.path) as any,
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user