From 04d461b4894f6951fc96d78d2ce9ed91a45ca919 Mon Sep 17 00:00:00 2001 From: moritanian Date: Thu, 17 Oct 2024 03:25:24 +0900 Subject: [PATCH 01/12] support loadProjects api --- src/backend/cloudlatex/clBackend.ts | 4 ++++ src/backend/cloudlatex/webAppApi.ts | 2 +- src/backend/ibackend.ts | 2 ++ src/latexApp.ts | 26 +++++++++++++++++++++++++- src/types.ts | 5 +++++ test/tool/backendStub.ts | 7 +++++++ 6 files changed, 44 insertions(+), 2 deletions(-) diff --git a/src/backend/cloudlatex/clBackend.ts b/src/backend/cloudlatex/clBackend.ts index e3711f2..c875cc9 100644 --- a/src/backend/cloudlatex/clBackend.ts +++ b/src/backend/cloudlatex/clBackend.ts @@ -75,6 +75,10 @@ export class ClBackend implements IBackend { return this.api.deleteFile(file.remoteId); } + public async loadProjectList(): Promise> { + return this.api.loadProjects(); + } + public async loadProjectInfo(): Promise { const clProjectInfo = await this.api.loadProjectInfo(); return { diff --git a/src/backend/cloudlatex/webAppApi.ts b/src/backend/cloudlatex/webAppApi.ts index 510596b..9f26d4b 100644 --- a/src/backend/cloudlatex/webAppApi.ts +++ b/src/backend/cloudlatex/webAppApi.ts @@ -76,7 +76,7 @@ export class CLWebAppApi { if (!res.ok) { throw new Error(await res.text()); } - return JSON.parse((await res.json()) as string); + return (await res.json())['projects']; } async loadProjectInfo(): Promise { diff --git a/src/backend/ibackend.ts b/src/backend/ibackend.ts index 118e45c..0f70974 100644 --- a/src/backend/ibackend.ts +++ b/src/backend/ibackend.ts @@ -17,6 +17,8 @@ export type CompileResult = { export interface IBackend { validateToken(): Promise; + loadProjectList(): Promise> + loadProjectInfo(): Promise; updateProjectInfo(param: UpdateProjectInfoParam): Promise; diff --git a/src/latexApp.ts b/src/latexApp.ts index 00ff64e..87660e7 100644 --- a/src/latexApp.ts +++ b/src/latexApp.ts @@ -3,7 +3,8 @@ import { version } from '../package.json'; import { Logger, getErrorTraceStr } from './util/logger'; import { Config, Account, CompileResult, ILatexApp, LoginResult, SyncResult, - ConflictSolution, UpdateProjectInfoResult, UpdateProjectInfoParam + ConflictSolution, UpdateProjectInfoResult, UpdateProjectInfoParam, + ListProjectsResult } from './types'; import { FileAdapter } from './fileService/fileAdapter'; import { SyncManager } from './fileService/syncManager'; @@ -203,6 +204,29 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { }; } + /** + * List projeect + */ + public async listProjects(): Promise { + // Login + const loginResult = await this.login(); + if (loginResult.status !== 'success') { + return { ...loginResult, projects: [] }; + } + + try { + const projects = await this.backend.loadProjectList(); + return { status: 'success', projects }; + } catch (err) { + const msg = 'Some error occurred in loading project list: '; + this.logger.warn(msg + getErrorTraceStr(err)); + return { + status: 'unknown-error', + projects: [], + }; + } + } + /** * Stop watching file system */ diff --git a/src/types.ts b/src/types.ts index 2597b43..e62ca1c 100644 --- a/src/types.ts +++ b/src/types.ts @@ -75,6 +75,11 @@ export type LoginResult = { errors?: string[] }; +export type ListProjectsResult = { + status: BaseResultStatus; + projects: ProjectInfo[]; +}; + export type UpdateProjectInfoResult = { status: BaseResultStatus; appInfo: AppInfo; diff --git a/test/tool/backendStub.ts b/test/tool/backendStub.ts index 6de90cf..a44d980 100644 --- a/test/tool/backendStub.ts +++ b/test/tool/backendStub.ts @@ -25,6 +25,13 @@ export class BackendStub implements IBackend { return Promise.resolve(true); } + loadProjectList(): Promise> { + if (this.isOffline) { + return Promise.reject('Network error on loadProjectList'); + } + return Promise.resolve([]); + } + loadProjectInfo(): Promise { if (this.isOffline) { return Promise.reject('Network error on loadProjectInfo'); From a02696ce1c1d5f0cdf8a5a28a086645ca3b471d6 Mon Sep 17 00:00:00 2001 From: moritanian Date: Thu, 17 Oct 2024 03:25:42 +0900 Subject: [PATCH 02/12] add TODO comment for download api --- src/backend/cloudlatex/clBackend.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/backend/cloudlatex/clBackend.ts b/src/backend/cloudlatex/clBackend.ts index c875cc9..078c54d 100644 --- a/src/backend/cloudlatex/clBackend.ts +++ b/src/backend/cloudlatex/clBackend.ts @@ -24,6 +24,10 @@ export class ClBackend implements IBackend { } public download(file: FileInfo): Promise { + /** + * TODO use `api/projects/[projectId]/files/[fileId]/download` endpoint + */ + /* * url of some files such as pdf begins with '/' * like '/projects/180901/files/1811770/preview' From bf2a9f727e83495a5d72376d2518e05f265fcc07 Mon Sep 17 00:00:00 2001 From: moritanian Date: Fri, 18 Oct 2024 02:25:59 +0900 Subject: [PATCH 03/12] Introduce sync table --- src/latexApp.ts | 33 ++++++++++++++++++++++++++++++++- src/model/syncModel.ts | 14 ++++++++++++++ src/types.ts | 2 +- 3 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 src/model/syncModel.ts diff --git a/src/latexApp.ts b/src/latexApp.ts index 87660e7..66c7e2a 100644 --- a/src/latexApp.ts +++ b/src/latexApp.ts @@ -19,6 +19,7 @@ import { calcIgnoredFiles, calcRelativeOutDir, getDBFilePath, toPosixPath, checkIgnoredByFileInfo } from './fileService/filePath'; import { AsyncRunner } from './util/asyncRunner'; +import { SYNC_DESC } from './model/syncModel'; /* eslint-disable @typescript-eslint/naming-convention */ export const LATEX_APP_EVENTS = { @@ -57,6 +58,7 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { private backend: IBackend, private fileAdapter: FileAdapter, private fileRepo: Repository, + private syncRepo: Repository, private logger: Logger = new Logger(), ) { super(); @@ -129,8 +131,10 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { // DB const dbFilePath = getDBFilePath(config); const db = new TypeDB(dbFilePath); + let dbLoaded = false; try { await db.load(); + dbLoaded = true; } catch (err) { // Not initialized because there is no db file. } @@ -138,10 +142,23 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { const fileAdapter = new FileAdapter(config.rootPath, fileRepo, backend); + // Sync repo + const syncRepo = db.getRepository(SYNC_DESC); + if (dbLoaded) { + if (syncRepo.all().length === 0) { + // Previously synced but record is not crated + syncRepo.new({ synced: true }); + } + } else { + // Not synced yet + syncRepo.new({ synced: false }); + } + await syncRepo.save(); + // AppInfo const appInfoService = new AppInfoService(config, fileRepo); - return new LatexApp(config, appInfoService, backend, fileAdapter, fileRepo, logger); + return new LatexApp(config, appInfoService, backend, fileAdapter, fileRepo, syncRepo, logger); } private static sanitizeConfig(config: Config): Config { @@ -299,6 +316,20 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { return loginResult; } + // Check if first sync and not empty directory + const isFirstSync = this.syncRepo.all()[0].synced === false; + if (isFirstSync && this.fileRepo.all().length > 0) { + this.logger.warn('First sync and not empty directory'); + return { + status: 'not-empty-directory', + appInfo: this.appInfoService.appInfo, + }; + } + + this.syncRepo.new({ synced: true }); + await this.syncRepo.save(); + + // File synchronization const result = await this.syncManager.sync(conflictSolution); diff --git a/src/model/syncModel.ts b/src/model/syncModel.ts new file mode 100644 index 0000000..c5a7f73 --- /dev/null +++ b/src/model/syncModel.ts @@ -0,0 +1,14 @@ +import { Repository } from '@moritanian/type-db'; +import { sync } from 'glob'; + +export const SYNC_DESC = { + name: 'Sync', + columns: { + id: 0, + synced: false, + }, + primaryKey: 'id', + autoIncrement: true +}; + +export type SyncRepository = Repository; diff --git a/src/types.ts b/src/types.ts index e62ca1c..e84b894 100644 --- a/src/types.ts +++ b/src/types.ts @@ -86,7 +86,7 @@ export type UpdateProjectInfoResult = { errors?: string[]; }; -export type SyncStatus = BaseResultStatus | 'conflict'; +export type SyncStatus = BaseResultStatus | 'conflict' | 'not-empty-directory'; export type SyncResult = { status: SyncStatus; appInfo: AppInfo; From a7f58e3e560fe95587b6352fb11155f0711de7ad Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 01:43:08 +0900 Subject: [PATCH 04/12] add activation field in AppInfo --- src/latexApp.ts | 9 ++++++++- src/service/appInfoService.ts | 7 +++++++ src/types.ts | 1 + 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/latexApp.ts b/src/latexApp.ts index 66c7e2a..87b4b87 100644 --- a/src/latexApp.ts +++ b/src/latexApp.ts @@ -1,4 +1,5 @@ import * as EventEmitter from 'eventemitter3'; +import * as fs from 'fs'; import { version } from '../package.json'; import { Logger, getErrorTraceStr } from './util/logger'; import { @@ -133,10 +134,12 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { const db = new TypeDB(dbFilePath); let dbLoaded = false; try { + logger.info(`Load db file: ${dbFilePath}`); await db.load(); dbLoaded = true; } catch (err) { // Not initialized because there is no db file. + logger.info('DB file cannot be loaded'); } const fileRepo = db.getRepository(FILE_INFO_DESC); @@ -147,10 +150,12 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { if (dbLoaded) { if (syncRepo.all().length === 0) { // Previously synced but record is not crated + logger.info('Previously synced but record is not created'); syncRepo.new({ synced: true }); } } else { // Not synced yet + logger.info('Not synced yet'); syncRepo.new({ synced: false }); } await syncRepo.save(); @@ -326,13 +331,15 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { }; } - this.syncRepo.new({ synced: true }); + this.syncRepo.all()[0].synced = true; await this.syncRepo.save(); // File synchronization const result = await this.syncManager.sync(conflictSolution); + this.appInfoService.setActivation(true); + const status = result.conflict ? 'conflict' : result.success ? 'success' : 'unknown-error'; diff --git a/src/service/appInfoService.ts b/src/service/appInfoService.ts index d943828..692d4aa 100644 --- a/src/service/appInfoService.ts +++ b/src/service/appInfoService.ts @@ -3,8 +3,10 @@ import { AppInfo, Config, LoginStatus, ProjectInfo } from '../types'; import { FileRepository, FileInfo } from './../model/fileModel'; export class AppInfoService { private projectInfo?: ProjectInfo; + private activation: boolean; private loginStatus: LoginStatus; constructor(public readonly config: Config, private fileRepo: FileRepository) { + this.activation = false; this.loginStatus = 'offline'; } @@ -17,6 +19,7 @@ export class AppInfoService { ); return { + activation: this.activation, loginStatus: this.loginStatus, projectName: this.projectInfo?.title, logPath: this._logPath(), @@ -30,6 +33,10 @@ export class AppInfoService { }; } + setActivation(activation: boolean): void { + this.activation = activation; + } + setLoginStatus(loginStatus: LoginStatus): void { this.loginStatus = loginStatus; } diff --git a/src/types.ts b/src/types.ts index e84b894..e87bf09 100644 --- a/src/types.ts +++ b/src/types.ts @@ -47,6 +47,7 @@ export type Account = { export type LoginStatus = 'offline' | 'valid' | 'invalid'; export interface AppInfo { + activation: boolean; loginStatus: LoginStatus; projectName?: string; logPath?: string, From 10a0823179a8e3c2529a1a3948dbcf2c84f6c7aa Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 01:43:34 +0900 Subject: [PATCH 05/12] update type-db version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 6717598..115b274 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "typescript": "^3.9.3" }, "dependencies": { - "@moritanian/type-db": "^0.1.0", + "@moritanian/type-db": "^0.2.0", "anymatch": "^3.1.3", "chokidar": "^3.3.1", "eventemitter3": "^4.0.0", diff --git a/yarn.lock b/yarn.lock index c0bb47c..1a16793 100644 --- a/yarn.lock +++ b/yarn.lock @@ -371,10 +371,10 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" -"@moritanian/type-db@^0.1.0": - version "0.1.0" - resolved "https://registry.yarnpkg.com/@moritanian/type-db/-/type-db-0.1.0.tgz#82b1a357b0be3041e2dfa411c28efa4ddeeff9a3" - integrity sha512-2c1Ns7nQLk9AqQvXH5mF/54M8ICP9Pv3EGHaAQYPeCn32ORqeytqMON/4X/0Wh9zP+QFXtGJX6s3LkAHaiiadQ== +"@moritanian/type-db@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@moritanian/type-db/-/type-db-0.2.0.tgz#20720aaec1ff3c7314f5d35066ae6bbe5be0712a" + integrity sha512-IzIz4/yAK3FUyDuZYGFl/IgUu/P1eVlFLf5rtIhG4f+ted3u2D2IsI3GbcHnUXN9i36P5Xf29Fqj25dXaoJezQ== "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1": version "1.8.5" From d4d0b17e733730ff0cc219281cc5f31ab8bd017b Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 01:44:32 +0900 Subject: [PATCH 06/12] delete file in resetLocal --- src/latexApp.ts | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/latexApp.ts b/src/latexApp.ts index 87b4b87..b80a87c 100644 --- a/src/latexApp.ts +++ b/src/latexApp.ts @@ -504,10 +504,26 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { /** * clear local changes to resolve sync problem */ - public resetLocal(): void { + public async resetLocal(): Promise { this.logger.info('resetLocal()'); this.fileRepo.all().forEach(f => this.fileRepo.delete(f.id)); - // eslint-disable-next-line @typescript-eslint/no-floating-promises - this.fileRepo.save(); + + // Remove db file + const dbFilePath = getDBFilePath(this.config); + if (!dbFilePath) { + this.logger.warn('DB file path is not set'); + return; + } + + if (!fs.existsSync(dbFilePath)) { + return; + } + + this.logger.info(`Remove db file: ${dbFilePath}`); + try { + await fs.promises.rm(dbFilePath); + } catch (err) { + this.logger.error(getErrorTraceStr(err)); + } } } From 0df690c2bb508bd6dff73440d5de0f30f7d7c540 Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 02:18:13 +0900 Subject: [PATCH 07/12] export ProjectInfo message type in index.ts --- src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.ts b/src/index.ts index 9216b59..d85d2b0 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ export { - AppInfo, Config, Account, CompileResult, LoginStatus, SyncResult, ConflictSolution + AppInfo, Config, Account, CompileResult, LoginStatus, SyncResult, ConflictSolution, ProjectInfo, } from './types'; export { FileInfo } from './model/fileModel'; export { LatexApp, LATEX_APP_EVENTS } from './latexApp'; From d272f5b1a087ac59ab0bdb56a7bcc6ed7d33aecf Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 02:35:49 +0900 Subject: [PATCH 08/12] change activation -> activationStatus and do not allow to sync after no-empty-error --- src/latexApp.ts | 18 ++++++++++-------- src/service/appInfoService.ts | 12 ++++++------ src/types.ts | 3 ++- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/latexApp.ts b/src/latexApp.ts index b80a87c..4a4dc15 100644 --- a/src/latexApp.ts +++ b/src/latexApp.ts @@ -315,16 +315,13 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { * Synchronize files */ public async sync(conflictSolution?: ConflictSolution): Promise { - // Login - const loginResult = await this.login(); - if (loginResult.status !== 'success') { - return loginResult; - } - // Check if first sync and not empty directory + const alreadyNotEmptyError = this.appInfoService.appInfo.activationStatus === 'not-empty-directory-error'; const isFirstSync = this.syncRepo.all()[0].synced === false; - if (isFirstSync && this.fileRepo.all().length > 0) { + const notEmptyError = isFirstSync && this.fileRepo.all().length > 0; + if (alreadyNotEmptyError || notEmptyError) { this.logger.warn('First sync and not empty directory'); + this.appInfoService.setActivationStatus('not-empty-directory-error'); return { status: 'not-empty-directory', appInfo: this.appInfoService.appInfo, @@ -334,11 +331,16 @@ export class LatexApp extends LAEventEmitter implements ILatexApp { this.syncRepo.all()[0].synced = true; await this.syncRepo.save(); + // Login + const loginResult = await this.login(); + if (loginResult.status !== 'success') { + return loginResult; + } // File synchronization const result = await this.syncManager.sync(conflictSolution); - this.appInfoService.setActivation(true); + this.appInfoService.setActivationStatus('active'); const status = result.conflict ? 'conflict' diff --git a/src/service/appInfoService.ts b/src/service/appInfoService.ts index 692d4aa..8f83809 100644 --- a/src/service/appInfoService.ts +++ b/src/service/appInfoService.ts @@ -1,12 +1,12 @@ import * as path from 'path'; -import { AppInfo, Config, LoginStatus, ProjectInfo } from '../types'; +import { ActivationStatus, AppInfo, Config, LoginStatus, ProjectInfo } from '../types'; import { FileRepository, FileInfo } from './../model/fileModel'; export class AppInfoService { private projectInfo?: ProjectInfo; - private activation: boolean; + private activationStatus: ActivationStatus; private loginStatus: LoginStatus; constructor(public readonly config: Config, private fileRepo: FileRepository) { - this.activation = false; + this.activationStatus = 'inactive'; this.loginStatus = 'offline'; } @@ -19,7 +19,7 @@ export class AppInfoService { ); return { - activation: this.activation, + activationStatus: this.activationStatus, loginStatus: this.loginStatus, projectName: this.projectInfo?.title, logPath: this._logPath(), @@ -33,8 +33,8 @@ export class AppInfoService { }; } - setActivation(activation: boolean): void { - this.activation = activation; + setActivationStatus(activationStatus: ActivationStatus): void { + this.activationStatus = activationStatus; } setLoginStatus(loginStatus: LoginStatus): void { diff --git a/src/types.ts b/src/types.ts index e87bf09..0599e24 100644 --- a/src/types.ts +++ b/src/types.ts @@ -44,10 +44,11 @@ export type Account = { client: string }; +export type ActivationStatus = 'active' | 'inactive' | 'not-empty-directory-error'; export type LoginStatus = 'offline' | 'valid' | 'invalid'; export interface AppInfo { - activation: boolean; + activationStatus: ActivationStatus; loginStatus: LoginStatus; projectName?: string; logPath?: string, From 80f8a54aee96aabf80ab86518e47bad5ba147640 Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 22 Oct 2024 23:14:13 +0900 Subject: [PATCH 09/12] update dist --- dist/package.json | 67 ++++++++++++++ dist/src/backend/cloudlatex/clBackend.d.ts | 1 + dist/src/backend/cloudlatex/clBackend.js | 8 ++ dist/src/backend/cloudlatex/clBackend.js.map | 2 +- dist/src/backend/cloudlatex/webAppApi.js | 2 +- dist/src/backend/cloudlatex/webAppApi.js.map | 2 +- dist/src/backend/ibackend.d.ts | 1 + dist/src/index.d.ts | 2 +- dist/src/latexApp.d.ts | 12 ++- dist/src/latexApp.js | 92 ++++++++++++++++++-- dist/src/latexApp.js.map | 2 +- dist/src/model/syncModel.d.ts | 11 +++ dist/src/model/syncModel.js | 13 +++ dist/src/model/syncModel.js.map | 1 + dist/src/service/appInfoService.d.ts | 4 +- dist/src/service/appInfoService.js | 5 ++ dist/src/service/appInfoService.js.map | 2 +- dist/src/types.d.ts | 8 +- dist/test/tool/backendStub.d.ts | 1 + dist/test/tool/backendStub.js | 6 ++ dist/test/tool/backendStub.js.map | 2 +- 21 files changed, 225 insertions(+), 19 deletions(-) create mode 100644 dist/package.json create mode 100644 dist/src/model/syncModel.d.ts create mode 100644 dist/src/model/syncModel.js create mode 100644 dist/src/model/syncModel.js.map diff --git a/dist/package.json b/dist/package.json new file mode 100644 index 0000000..99f52b0 --- /dev/null +++ b/dist/package.json @@ -0,0 +1,67 @@ +{ + "name": "cloudlatex-cli-plugin", + "version": "3.1.0", + "license": "MIT", + "main": "./dist/src/index.js", + "bin": { + "latexcli": "./dist/src/cli.js" + }, + "scripts": { + "build": "tsc", + "lint": "eslint src test --ext ts", + "watch": "tsc -watch -p ./", + "test": "nyc mocha -r ts-node/register \"test/**/*.ts\"", + "unit": "nyc mocha -r ts-node/register \"test/unit/*.ts\"", + "integ": "nyc mocha -r ts-node/register \"test/integ/*.ts\"", + "report-coverage": "nyc report --reporter=text-lcov > coverage.lcov" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/cloudlatex-team/cloudlatex-cli-plugin.git" + }, + "homepage": "https://github.com/cloudlatex-team/cloudlatex-cli-plugin", + "keywords": [ + "db", + "typescript" + ], + "types": "dist/src/index.d.ts", + "files": [ + "dist" + ], + "devDependencies": { + "@types/chai": "^4.2.11", + "@types/fs-extra": "^9.0.1", + "@types/glob": "^7.1.1", + "@types/mocha": "^7.0.2", + "@types/mock-fs": "^4.10.0", + "@types/node": "^14.0.4", + "@types/node-fetch": "^2.5.5", + "@types/pako": "^1.0.1", + "@types/sinon": "^9.0.4", + "@types/text-encoding": "^0.0.35", + "@types/uuid": "^8.0.0", + "@typescript-eslint/eslint-plugin": "^3.10.1", + "@typescript-eslint/parser": "^3.10.1", + "chai": "^4.2.0", + "eslint": "^7.32.0", + "fs-extra": "^9.0.1", + "glob": "^7.1.6", + "mocha": "^9.2.0", + "mock-fs": "^4.12.0", + "nyc": "^15.0.1", + "sinon": "^9.0.2", + "ts-node": "^8.10.1", + "typescript": "^3.9.3" + }, + "dependencies": { + "@moritanian/type-db": "^0.2.0", + "anymatch": "^3.1.3", + "chokidar": "^3.3.1", + "eventemitter3": "^4.0.0", + "form-data": "^3.0.0", + "node-fetch": "^2.6.7", + "pako": "^1.0.11", + "text-encoding": "^0.7.0", + "uuid": "^8.1.0" + } +} diff --git a/dist/src/backend/cloudlatex/clBackend.d.ts b/dist/src/backend/cloudlatex/clBackend.d.ts index ca3aac9..4b5da48 100644 --- a/dist/src/backend/cloudlatex/clBackend.d.ts +++ b/dist/src/backend/cloudlatex/clBackend.d.ts @@ -23,6 +23,7 @@ export declare class ClBackend implements IBackend { deleteRemote(file: FileInfo & { remoteId: number; }): Promise; + loadProjectList(): Promise>; loadProjectInfo(): Promise; updateProjectInfo(param: UpdateProjectInfoParam): Promise; loadFileList(): Promise; diff --git a/dist/src/backend/cloudlatex/clBackend.js b/dist/src/backend/cloudlatex/clBackend.js index fe58f96..21f6094 100644 --- a/dist/src/backend/cloudlatex/clBackend.js +++ b/dist/src/backend/cloudlatex/clBackend.js @@ -25,6 +25,9 @@ class ClBackend { return this.api.validateToken(); } download(file) { + /** + * TODO use `api/projects/[projectId]/files/[fileId]/download` endpoint + */ /* * url of some files such as pdf begins with '/' * like '/projects/180901/files/1811770/preview' @@ -74,6 +77,11 @@ class ClBackend { return this.api.deleteFile(file.remoteId); }); } + loadProjectList() { + return __awaiter(this, void 0, void 0, function* () { + return this.api.loadProjects(); + }); + } loadProjectInfo() { return __awaiter(this, void 0, void 0, function* () { const clProjectInfo = yield this.api.loadProjectInfo(); diff --git a/dist/src/backend/cloudlatex/clBackend.js.map b/dist/src/backend/cloudlatex/clBackend.js.map index 9b65b88..03a39a7 100644 --- a/dist/src/backend/cloudlatex/clBackend.js.map +++ b/dist/src/backend/cloudlatex/clBackend.js.map @@ -1 +1 @@ -{"version":3,"file":"clBackend.js","sourceRoot":"","sources":["../../../../src/backend/cloudlatex/clBackend.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6BAA6B;AAC7B,2BAA2B;AAC3B,6BAA6B;AAC7B,iDAA4C;AAE5C,2CAA0C;AAK1C,8CAAmE;AAGnE,MAAa,SAAS;IAGpB,YAAY,MAAc,EAAE,cAAuC;QACjE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,IAAI,uBAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAClC,CAAC;IAEM,QAAQ,CAAC,IAAc;QAC5B;;;WAGG;QACH,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACvB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/E,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAEY,MAAM;IACjB,6DAA6D;IAC7D,IAAc,EAAE,MAA6B,EAAE,MAAgB;;YAE/D,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBACpD,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpC;YACD,IAAI,WAAW,KAAK,GAAG,EAAE;gBACvB,WAAW,GAAG,EAAE,CAAC;aAClB;YACD,8DAA8D;YAC9D,MAAM,MAAM,GAAQ,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5E,CAAC;KAAA;IAEY,YAAY,CACvB,IAAc,EAAE,MAAuB;;YAEvC,MAAM,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClD,8DAA8D;YAC9D,MAAM,MAAM,GAAQ,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9G,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5E,CAAC;KAAA;IAEY,YAAY,CAAC,IAAqC,EAAE,MAA6B;;YAC5F,MAAM,OAAO,GAAG,MAAM,uBAAc,CAAC,MAAM,CAAC,CAAC;YAE7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACtD,OAAO;gBACP,QAAQ,EAAE,IAAI,CAAC,cAAc;aAC9B,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC;KAAA;IAEY,YAAY,CAAC,IAAqC;;YAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEY,eAAe;;YAC1B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;YACvD,OAAO;gBACL,EAAE,EAAE,aAAa,CAAC,EAAE;gBACpB,yBAAyB,EAAE,aAAa,CAAC,sBAAsB;gBAC/D,KAAK,EAAE,aAAa,CAAC,KAAK;aAC3B,CAAC;QACJ,CAAC;KAAA;IAEM,iBAAiB,CAAC,KAA6B;QACpD,MAAM,OAAO,GAA6B,EAAE,CAAC;QAC7C,IAAI,KAAK,CAAC,KAAK,EAAE;YACf,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;SAC7B;QACD,IAAI,KAAK,CAAC,yBAAyB,EAAE;YACnC,OAAO,CAAC,sBAAsB,GAAG,KAAK,CAAC,yBAAmC,CAAC;SAC5E;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAEY,YAAY;;YACvB,8DAA8D;YAC9D,MAAM,GAAG,GAAQ,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAkB,GAAG,CAAC,cAAc,CAAC;YAExD,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBACtC,OAAO;oBACL,EAAE,EAAE,CAAC,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,SAAS;oBAClC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;oBAC5C,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC;oBAClC,cAAc,EAAE,YAAY,CAAC,QAAQ;oBACrC,aAAa,EAAE,YAAY,CAAC,QAAQ;oBACpC,WAAW,EAAE,IAAI;oBACjB,YAAY,EAAE,IAAI;oBAClB,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;oBACjC,aAAa,EAAE,KAAK;iBACrB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEM,iBAAiB,CAAC,GAAW;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAEY,cAAc;;YAKzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,uBAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,IAAI,GAA0B,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAChE,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC;oBACnB,OAAO,EAAE,GAAG,CAAC,SAAS;oBACtB,IAAI,EAAE,OAAgB;oBACtB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;iBAChE,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACnC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;oBACpB,OAAO,EAAE,IAAI,CAAC,WAAW;oBACzB,IAAI,EAAE,SAAkB;oBACxB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;iBACjE,CAAC,CAAC,CAAC,CAAC;YAEL,IAAI,QAAQ,KAAK,CAAC,EAAE;gBAClB,OAAO;oBACL,MAAM,EAAE,gBAAgB;oBACxB,SAAS;oBACT,IAAI;iBACL,CAAC;aACH;YAED,MAAM;YACN,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEtD,mBAAmB;YACnB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;YAC9D,IAAI,UAAU,GAAG,IAAI,2BAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC/D,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrE,MAAM,aAAa,GAAG,IAAI,uBAAc,CAAC,UAAU,CAAC,CAAC;YAErD,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,SAAS;gBACT,IAAI;gBACJ,SAAS;gBACT,aAAa;aACd,CAAC;QACJ,CAAC;KAAA;CACF;AA7JD,8BA6JC"} \ No newline at end of file +{"version":3,"file":"clBackend.js","sourceRoot":"","sources":["../../../../src/backend/cloudlatex/clBackend.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/src/backend/cloudlatex/webAppApi.js b/dist/src/backend/cloudlatex/webAppApi.js index 50a49b4..bb3bf0f 100644 --- a/dist/src/backend/cloudlatex/webAppApi.js +++ b/dist/src/backend/cloudlatex/webAppApi.js @@ -73,7 +73,7 @@ class CLWebAppApi { if (!res.ok) { throw new Error(yield res.text()); } - return JSON.parse((yield res.json())); + return (yield res.json())['projects']; }); } loadProjectInfo() { diff --git a/dist/src/backend/cloudlatex/webAppApi.js.map b/dist/src/backend/cloudlatex/webAppApi.js.map index 78cd192..68fc362 100644 --- a/dist/src/backend/cloudlatex/webAppApi.js.map +++ b/dist/src/backend/cloudlatex/webAppApi.js.map @@ -1 +1 @@ -{"version":3,"file":"webAppApi.js","sourceRoot":"","sources":["../../../../src/backend/cloudlatex/webAppApi.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"webAppApi.js","sourceRoot":"","sources":["../../../../src/backend/cloudlatex/webAppApi.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/src/backend/ibackend.d.ts b/dist/src/backend/ibackend.d.ts index a86c37e..799ff4f 100644 --- a/dist/src/backend/ibackend.d.ts +++ b/dist/src/backend/ibackend.d.ts @@ -15,6 +15,7 @@ export declare type CompileResult = { }; export interface IBackend { validateToken(): Promise; + loadProjectList(): Promise>; loadProjectInfo(): Promise; updateProjectInfo(param: UpdateProjectInfoParam): Promise; loadFileList(): Promise; diff --git a/dist/src/index.d.ts b/dist/src/index.d.ts index 1aa88df..51709d8 100644 --- a/dist/src/index.d.ts +++ b/dist/src/index.d.ts @@ -1,4 +1,4 @@ -export { AppInfo, Config, Account, CompileResult, LoginStatus, SyncResult, ConflictSolution } from './types'; +export { AppInfo, Config, Account, CompileResult, LoginStatus, SyncResult, ConflictSolution, ProjectInfo, } from './types'; export { FileInfo } from './model/fileModel'; export { LatexApp, LATEX_APP_EVENTS } from './latexApp'; export { Logger } from './util/logger'; diff --git a/dist/src/latexApp.d.ts b/dist/src/latexApp.d.ts index 6099881..7c4b3ef 100644 --- a/dist/src/latexApp.d.ts +++ b/dist/src/latexApp.d.ts @@ -1,12 +1,13 @@ import * as EventEmitter from 'eventemitter3'; import { Logger } from './util/logger'; -import { Config, Account, CompileResult, ILatexApp, LoginResult, SyncResult, ConflictSolution, UpdateProjectInfoResult, UpdateProjectInfoParam } from './types'; +import { Config, Account, CompileResult, ILatexApp, LoginResult, SyncResult, ConflictSolution, UpdateProjectInfoResult, UpdateProjectInfoParam, ListProjectsResult } from './types'; import { FileAdapter } from './fileService/fileAdapter'; import { Repository } from '@moritanian/type-db'; import { FILE_INFO_DESC } from './model/fileModel'; import { IBackend } from './backend/ibackend'; import { AccountService } from './service/accountService'; import { AppInfoService } from './service/appInfoService'; +import { SYNC_DESC } from './model/syncModel'; export declare const LATEX_APP_EVENTS: { readonly FILE_CHANGED: "file-changed"; readonly FILE_CHANGE_ERROR: "file-change-error"; @@ -27,6 +28,7 @@ export declare class LatexApp extends LAEventEmitter implements ILatexApp { private backend; private fileAdapter; private fileRepo; + private syncRepo; private logger; private syncManager; private fileWatcher; @@ -34,7 +36,7 @@ export declare class LatexApp extends LAEventEmitter implements ILatexApp { /** * Do not use this constructor. Be sure to instantiate LatexApp by createApp() */ - constructor(config: Config, appInfoService: AppInfoService, backend: IBackend, fileAdapter: FileAdapter, fileRepo: Repository, logger?: Logger); + constructor(config: Config, appInfoService: AppInfoService, backend: IBackend, fileAdapter: FileAdapter, fileRepo: Repository, syncRepo: Repository, logger?: Logger); /** * setup file management classes * @@ -56,6 +58,10 @@ export declare class LatexApp extends LAEventEmitter implements ILatexApp { * Login */ login(): Promise; + /** + * List projeect + */ + listProjects(): Promise; /** * Stop watching file system */ @@ -87,6 +93,6 @@ export declare class LatexApp extends LAEventEmitter implements ILatexApp { /** * clear local changes to resolve sync problem */ - resetLocal(): void; + resetLocal(): Promise; } export {}; diff --git a/dist/src/latexApp.js b/dist/src/latexApp.js index 086b023..3b66865 100644 --- a/dist/src/latexApp.js +++ b/dist/src/latexApp.js @@ -11,6 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge Object.defineProperty(exports, "__esModule", { value: true }); exports.LatexApp = exports.LATEX_APP_EVENTS = void 0; const EventEmitter = require("eventemitter3"); +const fs = require("fs"); +const package_json_1 = require("../package.json"); const logger_1 = require("./util/logger"); const fileAdapter_1 = require("./fileService/fileAdapter"); const syncManager_1 = require("./fileService/syncManager"); @@ -22,6 +24,7 @@ const accountService_1 = require("./service/accountService"); const appInfoService_1 = require("./service/appInfoService"); const filePath_1 = require("./fileService/filePath"); const asyncRunner_1 = require("./util/asyncRunner"); +const syncModel_1 = require("./model/syncModel"); /* eslint-disable @typescript-eslint/naming-convention */ exports.LATEX_APP_EVENTS = { FILE_CHANGED: 'file-changed', @@ -34,13 +37,14 @@ class LatexApp extends LAEventEmitter { /** * Do not use this constructor. Be sure to instantiate LatexApp by createApp() */ - constructor(config, appInfoService, backend, fileAdapter, fileRepo, logger = new logger_1.Logger()) { + constructor(config, appInfoService, backend, fileAdapter, fileRepo, syncRepo, logger = new logger_1.Logger()) { super(); this.config = config; this.appInfoService = appInfoService; this.backend = backend; this.fileAdapter = fileAdapter; this.fileRepo = fileRepo; + this.syncRepo = syncRepo; this.logger = logger; this.compilationRunner = new asyncRunner_1.AsyncRunner(() => this.execCompile()); /** @@ -80,7 +84,7 @@ class LatexApp extends LAEventEmitter { static createApp(config, option = {}) { return __awaiter(this, void 0, void 0, function* () { const logger = option.logger || new logger_1.Logger(); - logger.log(`latex-cli ${'3.0.0'}`); + logger.log(`latex-cli ${package_json_1.version}`); // Config config = this.sanitizeConfig(config); // Account @@ -91,17 +95,36 @@ class LatexApp extends LAEventEmitter { // DB const dbFilePath = filePath_1.getDBFilePath(config); const db = new type_db_1.TypeDB(dbFilePath); + let dbLoaded = false; try { + logger.info(`Load db file: ${dbFilePath}`); yield db.load(); + dbLoaded = true; } catch (err) { // Not initialized because there is no db file. + logger.info('DB file cannot be loaded'); } const fileRepo = db.getRepository(fileModel_1.FILE_INFO_DESC); const fileAdapter = new fileAdapter_1.FileAdapter(config.rootPath, fileRepo, backend); + // Sync repo + const syncRepo = db.getRepository(syncModel_1.SYNC_DESC); + if (dbLoaded) { + if (syncRepo.all().length === 0) { + // Previously synced but record is not crated + logger.info('Previously synced but record is not created'); + syncRepo.new({ synced: true }); + } + } + else { + // Not synced yet + logger.info('Not synced yet'); + syncRepo.new({ synced: false }); + } + yield syncRepo.save(); // AppInfo const appInfoService = new appInfoService_1.AppInfoService(config, fileRepo); - return new LatexApp(config, appInfoService, backend, fileAdapter, fileRepo, logger); + return new LatexApp(config, appInfoService, backend, fileAdapter, fileRepo, syncRepo, logger); }); } static sanitizeConfig(config) { @@ -161,6 +184,30 @@ class LatexApp extends LAEventEmitter { }; }); } + /** + * List projeect + */ + listProjects() { + return __awaiter(this, void 0, void 0, function* () { + // Login + const loginResult = yield this.login(); + if (loginResult.status !== 'success') { + return Object.assign(Object.assign({}, loginResult), { projects: [] }); + } + try { + const projects = yield this.backend.loadProjectList(); + return { status: 'success', projects }; + } + catch (err) { + const msg = 'Some error occurred in loading project list: '; + this.logger.warn(msg + logger_1.getErrorTraceStr(err)); + return { + status: 'unknown-error', + projects: [], + }; + } + }); + } /** * Stop watching file system */ @@ -225,6 +272,20 @@ class LatexApp extends LAEventEmitter { */ sync(conflictSolution) { return __awaiter(this, void 0, void 0, function* () { + // Check if first sync and not empty directory + const alreadyNotEmptyError = this.appInfoService.appInfo.activationStatus === 'not-empty-directory-error'; + const isFirstSync = this.syncRepo.all()[0].synced === false; + const notEmptyError = isFirstSync && this.fileRepo.all().length > 0; + if (alreadyNotEmptyError || notEmptyError) { + this.logger.warn('First sync and not empty directory'); + this.appInfoService.setActivationStatus('not-empty-directory-error'); + return { + status: 'not-empty-directory', + appInfo: this.appInfoService.appInfo, + }; + } + this.syncRepo.all()[0].synced = true; + yield this.syncRepo.save(); // Login const loginResult = yield this.login(); if (loginResult.status !== 'success') { @@ -232,6 +293,7 @@ class LatexApp extends LAEventEmitter { } // File synchronization const result = yield this.syncManager.sync(conflictSolution); + this.appInfoService.setActivationStatus('active'); const status = result.conflict ? 'conflict' : result.success ? 'success' : 'unknown-error'; @@ -386,10 +448,26 @@ class LatexApp extends LAEventEmitter { * clear local changes to resolve sync problem */ resetLocal() { - this.logger.info('resetLocal()'); - this.fileRepo.all().forEach(f => this.fileRepo.delete(f.id)); - // eslint-disable-next-line @typescript-eslint/no-floating-promises - this.fileRepo.save(); + return __awaiter(this, void 0, void 0, function* () { + this.logger.info('resetLocal()'); + this.fileRepo.all().forEach(f => this.fileRepo.delete(f.id)); + // Remove db file + const dbFilePath = filePath_1.getDBFilePath(this.config); + if (!dbFilePath) { + this.logger.warn('DB file path is not set'); + return; + } + if (!fs.existsSync(dbFilePath)) { + return; + } + this.logger.info(`Remove db file: ${dbFilePath}`); + try { + yield fs.promises.rm(dbFilePath); + } + catch (err) { + this.logger.error(logger_1.getErrorTraceStr(err)); + } + }); } } exports.LatexApp = LatexApp; diff --git a/dist/src/latexApp.js.map b/dist/src/latexApp.js.map index 5f5114c..e0026f2 100644 --- a/dist/src/latexApp.js.map +++ b/dist/src/latexApp.js.map @@ -1 +1 @@ -{"version":3,"file":"latexApp.js","sourceRoot":"","sources":["../../src/latexApp.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"latexApp.js","sourceRoot":"","sources":["../../src/latexApp.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/src/model/syncModel.d.ts b/dist/src/model/syncModel.d.ts new file mode 100644 index 0000000..b49f3c3 --- /dev/null +++ b/dist/src/model/syncModel.d.ts @@ -0,0 +1,11 @@ +import { Repository } from '@moritanian/type-db'; +export declare const SYNC_DESC: { + name: string; + columns: { + id: number; + synced: boolean; + }; + primaryKey: string; + autoIncrement: boolean; +}; +export declare type SyncRepository = Repository; diff --git a/dist/src/model/syncModel.js b/dist/src/model/syncModel.js new file mode 100644 index 0000000..1450bfc --- /dev/null +++ b/dist/src/model/syncModel.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SYNC_DESC = void 0; +exports.SYNC_DESC = { + name: 'Sync', + columns: { + id: 0, + synced: false, + }, + primaryKey: 'id', + autoIncrement: true +}; +//# sourceMappingURL=syncModel.js.map \ No newline at end of file diff --git a/dist/src/model/syncModel.js.map b/dist/src/model/syncModel.js.map new file mode 100644 index 0000000..c1869df --- /dev/null +++ b/dist/src/model/syncModel.js.map @@ -0,0 +1 @@ +{"version":3,"file":"syncModel.js","sourceRoot":"","sources":["../../../src/model/syncModel.ts"],"names":[],"mappings":";;;AAGa,QAAA,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE;QACP,EAAE,EAAE,CAAC;QACL,MAAM,EAAE,KAAK;KACd;IACD,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,IAAI;CACpB,CAAC"} \ No newline at end of file diff --git a/dist/src/service/appInfoService.d.ts b/dist/src/service/appInfoService.d.ts index 28cd8f8..75527a2 100644 --- a/dist/src/service/appInfoService.d.ts +++ b/dist/src/service/appInfoService.d.ts @@ -1,12 +1,14 @@ -import { AppInfo, Config, LoginStatus, ProjectInfo } from '../types'; +import { ActivationStatus, AppInfo, Config, LoginStatus, ProjectInfo } from '../types'; import { FileRepository } from './../model/fileModel'; export declare class AppInfoService { readonly config: Config; private fileRepo; private projectInfo?; + private activationStatus; private loginStatus; constructor(config: Config, fileRepo: FileRepository); get appInfo(): AppInfo; + setActivationStatus(activationStatus: ActivationStatus): void; setLoginStatus(loginStatus: LoginStatus): void; onProjectLoaded(projectInfo: ProjectInfo): void; private targetName; diff --git a/dist/src/service/appInfoService.js b/dist/src/service/appInfoService.js index c874055..6ca4dd5 100644 --- a/dist/src/service/appInfoService.js +++ b/dist/src/service/appInfoService.js @@ -6,6 +6,7 @@ class AppInfoService { constructor(config, fileRepo) { this.config = config; this.fileRepo = fileRepo; + this.activationStatus = 'inactive'; this.loginStatus = 'offline'; } get appInfo() { @@ -15,6 +16,7 @@ class AppInfoService { const targetFileCandidates = files.filter(file => file.relativePath.split(path.posix.sep).length === 1 && path.posix.extname(file.relativePath) === '.tex'); return { + activationStatus: this.activationStatus, loginStatus: this.loginStatus, projectName: (_a = this.projectInfo) === null || _a === void 0 ? void 0 : _a.title, logPath: this._logPath(), @@ -27,6 +29,9 @@ class AppInfoService { targetFileCandidates }; } + setActivationStatus(activationStatus) { + this.activationStatus = activationStatus; + } setLoginStatus(loginStatus) { this.loginStatus = loginStatus; } diff --git a/dist/src/service/appInfoService.js.map b/dist/src/service/appInfoService.js.map index 5df6355..0e6752d 100644 --- a/dist/src/service/appInfoService.js.map +++ b/dist/src/service/appInfoService.js.map @@ -1 +1 @@ -{"version":3,"file":"appInfoService.js","sourceRoot":"","sources":["../../../src/service/appInfoService.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAG7B,MAAa,cAAc;IAGzB,YAA4B,MAAc,EAAU,QAAwB;QAAhD,WAAM,GAAN,MAAM,CAAQ;QAAU,aAAQ,GAAR,QAAQ,CAAgB;QAC1E,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO;;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CACvC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;eACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,MAAM,CACtD,CAAC;QAEF,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,QAAE,IAAI,CAAC,WAAW,0CAAE,KAAK;YACpC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;YACxB,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;YACxB,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE;YAChC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;YAC1B,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;YAChE,UAAU;YACV,KAAK;YACL,oBAAoB;SACrB,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,WAAwB;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,eAAe,CAAC,WAAwB;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEO,UAAU;;QAChB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAA,IAAI,CAAC,UAAU,EAAE,0CAAE,YAAY,KAAI,MAAM,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IAEO,UAAU;;QAChB,OAAO,OAAA,IAAI,CAAC,WAAW,0CAAE,yBAAyB,MAAK,SAAS;eAC3D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC;eAC5E,SAAS,CAAC;IACjB,CAAC;IAEO,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;IAC/E,CAAC;IAEO,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;IAC/E,CAAC;IAEO,YAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC;IACnF,CAAC;CACF;AA7DD,wCA6DC"} \ No newline at end of file +{"version":3,"file":"appInfoService.js","sourceRoot":"","sources":["../../../src/service/appInfoService.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAG7B,MAAa,cAAc;IAIzB,YAA4B,MAAc,EAAU,QAAwB;QAAhD,WAAM,GAAN,MAAM,CAAQ;QAAU,aAAQ,GAAR,QAAQ,CAAgB;QAC1E,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO;;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CACvC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;eACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,MAAM,CACtD,CAAC;QAEF,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,QAAE,IAAI,CAAC,WAAW,0CAAE,KAAK;YACpC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;YACxB,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;YACxB,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE;YAChC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;YAC1B,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;YAChE,UAAU;YACV,KAAK;YACL,oBAAoB;SACrB,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,gBAAkC;QACpD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,cAAc,CAAC,WAAwB;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,eAAe,CAAC,WAAwB;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEO,UAAU;;QAChB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAA,IAAI,CAAC,UAAU,EAAE,0CAAE,YAAY,KAAI,MAAM,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IAEO,UAAU;;QAChB,OAAO,OAAA,IAAI,CAAC,WAAW,0CAAE,yBAAyB,MAAK,SAAS;eAC3D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC;eAC5E,SAAS,CAAC;IACjB,CAAC;IAEO,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;IAC/E,CAAC;IAEO,QAAQ;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;IAC/E,CAAC;IAEO,YAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC;IACnF,CAAC;CACF;AApED,wCAoEC"} \ No newline at end of file diff --git a/dist/src/types.d.ts b/dist/src/types.d.ts index 0d1d559..dffecfd 100644 --- a/dist/src/types.d.ts +++ b/dist/src/types.d.ts @@ -32,8 +32,10 @@ export declare type Account = { /** client ID */ client: string; }; +export declare type ActivationStatus = 'active' | 'inactive' | 'not-empty-directory-error'; export declare type LoginStatus = 'offline' | 'valid' | 'invalid'; export interface AppInfo { + activationStatus: ActivationStatus; loginStatus: LoginStatus; projectName?: string; logPath?: string; @@ -56,12 +58,16 @@ export declare type LoginResult = { appInfo: AppInfo; errors?: string[]; }; +export declare type ListProjectsResult = { + status: BaseResultStatus; + projects: ProjectInfo[]; +}; export declare type UpdateProjectInfoResult = { status: BaseResultStatus; appInfo: AppInfo; errors?: string[]; }; -export declare type SyncStatus = BaseResultStatus | 'conflict'; +export declare type SyncStatus = BaseResultStatus | 'conflict' | 'not-empty-directory'; export declare type SyncResult = { status: SyncStatus; appInfo: AppInfo; diff --git a/dist/test/tool/backendStub.d.ts b/dist/test/tool/backendStub.d.ts index ab3a49b..9650a18 100644 --- a/dist/test/tool/backendStub.d.ts +++ b/dist/test/tool/backendStub.d.ts @@ -9,6 +9,7 @@ export declare class BackendStub implements IBackend { remoteFiles: Repository; constructor(); validateToken(): Promise; + loadProjectList(): Promise>; loadProjectInfo(): Promise; updateProjectInfo(): Promise; loadFileList(): Promise; diff --git a/dist/test/tool/backendStub.js b/dist/test/tool/backendStub.js index 77cfecd..47f9dd3 100644 --- a/dist/test/tool/backendStub.js +++ b/dist/test/tool/backendStub.js @@ -30,6 +30,12 @@ class BackendStub { validateToken() { return Promise.resolve(true); } + loadProjectList() { + if (this.isOffline) { + return Promise.reject('Network error on loadProjectList'); + } + return Promise.resolve([]); + } loadProjectInfo() { if (this.isOffline) { return Promise.reject('Network error on loadProjectInfo'); diff --git a/dist/test/tool/backendStub.js.map b/dist/test/tool/backendStub.js.map index 53ee434..e573082 100644 --- a/dist/test/tool/backendStub.js.map +++ b/dist/test/tool/backendStub.js.map @@ -1 +1 @@ -{"version":3,"file":"backendStub.js","sourceRoot":"","sources":["../../../test/tool/backendStub.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"backendStub.js","sourceRoot":"","sources":["../../../test/tool/backendStub.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,iDAAyD;AACzD,yDAAqE;AACrE,+BAAkC;AAClC,kDAAuE;AAEvE;;;;;GAKG;AACH,MAAa,WAAW;IAItB;QAHO,cAAS,GAAG,KAAK,CAAC;QAClB,mBAAc,GAA2B,EAAE,CAAC;QAGjD,MAAM,QAAQ,GAAG,IAAI,gBAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,0BAAc,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa;QACX,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;SAC3D;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;SAC3D;QACD,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,EAAE,EAAE,CAAC;YACL,yBAAyB,EAAE,CAAC;YAC5B,KAAK,EAAE,EAAE;SACV,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;SAC7D;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;SACxD;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,6DAA6D;IACvD,MAAM,CAAC,IAAc,EAAE,MAA6B,EAAE,MAAgB;;YAI1E,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;aAClD;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;aAC9C;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,mBAAM,IAAI,EAAG,CAAC;YAClD,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAI,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,GAAG,SAAI,EAAE,CAAC;YACvD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,uBAAc,CAAC,MAAM,CAAC,CAAC;YAC7D,OAAO;gBACL,QAAQ;gBACR,cAAc;aACf,CAAC;QACJ,CAAC;KAAA;IAED,iGAAiG;IAC3F,YAAY,CAAC,IAAc,EAAE,MAAuB;;YACxD,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;aACxD;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,mBAAM,IAAI,EAAG,CAAC;YAClD,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAI,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,GAAG,SAAI,EAAE,CAAC;YACvD,OAAO;gBACL,QAAQ;gBACR,cAAc;aACf,CAAC;QACJ,CAAC;KAAA;IAEK,QAAQ,CAAC,IAAc;;YAC3B,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;aACpD;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;aACvC;YAED,IAAI,UAAU,CAAC,QAAQ,KAAK,IAAI,EAAE;gBAChC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;aACrC;YACD,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAChD;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAChD;YACD,OAAO,IAAI,uBAAc,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;IAEK,YAAY,CAAC,IAAc,EAAE,MAA6B;;YAC9D,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;aACxD;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,MAAM,uBAAc,CAAC,MAAM,CAAC,CAAC;YACxE,OAAO,UAAU,CAAC,cAAc,GAAG,SAAI,EAAE,CAAC;QAC5C,CAAC;KAAA;IAED,YAAY,CAAC,IAAc;QACzB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;SACxD;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;SAC1C;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC1C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,8DAA8D;IAC9D,cAAc;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;SAC1D;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACG,eAAe,CAAC,QAA2B,EAAE,OAAe;;YAChE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,QAAQ,CAAC,QAAQ,EAAE;gBACrB,MAAM,IAAI,CAAC,YAAY,CAAC,QAAoB,EAAE,IAAI,CAAC,CAAC;aACrD;iBAAM;gBACL,MAAM,IAAI,CAAC,MAAM,CAAC,QAAoB,EAAE,IAAI,uBAAc,CAAC,OAAO,CAAC,CAAC,CAAC;aAEtE;YACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;KAAA;IAEK,eAAe,CAAC,QAA2B,EAAE,OAAe;;YAChE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5C,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;aAC7C;YACD,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,uBAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YAErE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;KAAA;IAEK,eAAe,CAAC,QAA2B;;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEjC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5C,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;aAC7C;YACD,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAExC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;KAAA;CACF;AAnLD,kCAmLC"} \ No newline at end of file From 635845c208ca20393ad45223b658b4ba6279c15c Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 29 Oct 2024 00:30:33 +0900 Subject: [PATCH 10/12] v3.2.0 --- dist/package.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/package.json b/dist/package.json index 99f52b0..d4f6e0b 100644 --- a/dist/package.json +++ b/dist/package.json @@ -1,6 +1,6 @@ { "name": "cloudlatex-cli-plugin", - "version": "3.1.0", + "version": "3.2.0", "license": "MIT", "main": "./dist/src/index.js", "bin": { diff --git a/package.json b/package.json index 115b274..8b5c3e0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cloudlatex-cli-plugin", - "version": "3.1.0", + "version": "3.2.0", "license": "MIT", "main": "./dist/src/index.js", "bin": { From 1a1e1293224f817f2f75de466a9eff22d5b0cb09 Mon Sep 17 00:00:00 2001 From: moritanian Date: Tue, 29 Oct 2024 00:34:55 +0900 Subject: [PATCH 11/12] include dotFileExceptLatexmkdrc in DEFAULT_UER_IGNORED_FILES --- src/fileService/filePath.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/fileService/filePath.ts b/src/fileService/filePath.ts index 38a3e34..79a6146 100644 --- a/src/fileService/filePath.ts +++ b/src/fileService/filePath.ts @@ -10,6 +10,8 @@ const SYSTEM_IGNORED_FILES = [ '**/.DS_Store', ]; +export const dotFileExceptLatexmkrc = '**/.!(latexmkrc)'; + const DEFAULT_USER_IGNORED_FILES = [ '**/*.aux', '**/*.bbl', @@ -35,9 +37,9 @@ const DEFAULT_USER_IGNORED_FILES = [ '**/*.fdb_latexmk', '**/*.synctex.gz', '**/*.run.xml', + dotFileExceptLatexmkrc, ]; -export const dotFileExceptLatexmkrc = '**/.!(latexmkrc)'; function mergeMatcher(...macthers: Matcher[]): Matcher { return macthers.reduce>((merged, matcher) => { From 8b6092ccc6e79445566a2ca19e27290c2b01f236 Mon Sep 17 00:00:00 2001 From: moritanian Date: Mon, 30 Dec 2024 08:09:18 +0900 Subject: [PATCH 12/12] tmp --- src/fileService/fileWatcher.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/fileService/fileWatcher.ts b/src/fileService/fileWatcher.ts index dd66447..c029460 100644 --- a/src/fileService/fileWatcher.ts +++ b/src/fileService/fileWatcher.ts @@ -62,7 +62,8 @@ export class FileWatcher extends EventEmitter { awaitWriteFinish: { stabilityThreshold: 500, pollInterval: 100 - } + }, + cwd: this.config.rootPath, }; const fileWatcher = this.fileWatcher = chokidar.watch(this.config.rootPath, watcherOption);