1
0
mirror of https://github.com/bitwarden/cli synced 2025-12-06 04:23:19 +00:00

Add eslint (#496)

This commit is contained in:
Oscar Hinton
2022-03-03 18:24:41 +01:00
committed by GitHub
parent dd6a0cab7f
commit b4555039d8
48 changed files with 2703 additions and 1022 deletions

6
.eslintignore Normal file
View File

@@ -0,0 +1,6 @@
dist
build
jslib
webpack.config.js
**/node_modules

31
.eslintrc.json Normal file
View File

@@ -0,0 +1,31 @@
{
"root": true,
"env": {
"node": true
},
"extends": ["./jslib/shared/eslintrc.json"],
"rules": {
"import/order": [
"error",
{
"alphabetize": {
"order": "asc"
},
"newlines-between": "always",
"pathGroups": [
{
"pattern": "jslib-*/**",
"group": "external",
"position": "after"
},
{
"pattern": "src/**/*",
"group": "parent",
"position": "before"
}
],
"pathGroupsExcludedImportTypes": ["builtin"]
}
]
}
}

View File

@@ -1,3 +1,4 @@
/* eslint-disable no-console */
function load(envName) { function load(envName) {
return { return {
...loadConfig(envName), ...loadConfig(envName),

3367
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -39,8 +39,8 @@
"dist:mac": "npm run build:prod && npm run clean && npm run package:mac", "dist:mac": "npm run build:prod && npm run clean && npm run package:mac",
"dist:lin": "npm run build:prod && npm run clean && npm run package:lin", "dist:lin": "npm run build:prod && npm run clean && npm run package:lin",
"publish:npm": "npm run build:prod && npm publish --access public", "publish:npm": "npm run build:prod && npm publish --access public",
"lint": "tslint 'src/**/*.ts' 'spec/**/*.ts' && prettier --check .", "lint": "eslint . && prettier --check .",
"lint:fix": "tslint 'src/**/*.ts' 'spec/**/*.ts' --fix", "lint:fix": "eslint . --fix",
"prettier": "prettier --write .", "prettier": "prettier --write .",
"prepare": "husky install", "prepare": "husky install",
"test": "jasmine-ts -r tsconfig-paths/register -P spec/tsconfig.json", "test": "jasmine-ts -r tsconfig-paths/register -P spec/tsconfig.json",
@@ -72,9 +72,15 @@
"@types/retry": "^0.12.1", "@types/retry": "^0.12.1",
"@types/tldjs": "^2.3.0", "@types/tldjs": "^2.3.0",
"@types/zxcvbn": "^4.4.1", "@types/zxcvbn": "^4.4.1",
"@typescript-eslint/eslint-plugin": "^5.12.1",
"@typescript-eslint/parser": "^5.12.1",
"clean-webpack-plugin": "^4.0.0", "clean-webpack-plugin": "^4.0.0",
"copy-webpack-plugin": "^10.2.0", "copy-webpack-plugin": "^10.2.0",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"eslint": "^8.9.0",
"eslint-config-prettier": "^8.4.0",
"eslint-import-resolver-typescript": "^2.5.0",
"eslint-plugin-import": "^2.25.4",
"husky": "^7.0.4", "husky": "^7.0.4",
"jasmine": "^3.7.0", "jasmine": "^3.7.0",
"jasmine-core": "^3.7.1", "jasmine-core": "^3.7.1",
@@ -88,8 +94,6 @@
"ts-node": "^10.4.0", "ts-node": "^10.4.0",
"tsconfig-paths": "^3.12.0", "tsconfig-paths": "^3.12.0",
"tsconfig-paths-webpack-plugin": "^3.5.2", "tsconfig-paths-webpack-plugin": "^3.5.2",
"tslint": "^6.1.3",
"tslint-loader": "^3.5.4",
"typescript": "4.1.5", "typescript": "4.1.5",
"webpack": "^5.65.0", "webpack": "^5.65.0",
"webpack-cli": "^4.9.1", "webpack-cli": "^4.9.1",
@@ -127,6 +131,7 @@
"npm": ">=7 <=8" "npm": ">=7 <=8"
}, },
"lint-staged": { "lint-staged": {
"./!(jslib)**": "prettier --ignore-unknown --write" "./!(jslib)**": "prettier --ignore-unknown --write",
"*.ts": "eslint --fix"
} }
} }

View File

@@ -1,4 +1,4 @@
// tslint:disable-next-line // eslint-disable-next-line
const TSConsoleReporter = require("jasmine-ts-console-reporter"); const TSConsoleReporter = require("jasmine-ts-console-reporter");
jasmine.getEnv().clearReporters(); // Clear default console reporter jasmine.getEnv().clearReporters(); // Clear default console reporter
jasmine.getEnv().addReporter(new TSConsoleReporter()); jasmine.getEnv().addReporter(new TSConsoleReporter());

View File

@@ -1,23 +1,19 @@
import * as program from "commander";
import * as fs from "fs"; import * as fs from "fs";
import * as jsdom from "jsdom";
import * as path from "path"; import * as path from "path";
import * as program from "commander";
import * as jsdom from "jsdom";
import { ClientType } from "jslib-common/enums/clientType"; import { ClientType } from "jslib-common/enums/clientType";
import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions"; import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions";
import { LogLevelType } from "jslib-common/enums/logLevelType"; import { LogLevelType } from "jslib-common/enums/logLevelType";
import { StateFactory } from "jslib-common/factories/stateFactory";
import { AuthService } from "jslib-common/services/auth.service"; import { Account } from "jslib-common/models/domain/account";
import { GlobalState } from "jslib-common/models/domain/globalState";
import { I18nService } from "./services/i18n.service"; import { ApiLogInCredentials } from "jslib-common/models/domain/logInCredentials";
import { LowdbStorageService } from "./services/lowdbStorage.service";
import { NodeEnvSecureStorageService } from "./services/nodeEnvSecureStorage.service";
import { CliPlatformUtilsService } from "jslib-node/cli/services/cliPlatformUtils.service";
import { ConsoleLogService } from "jslib-node/cli/services/consoleLog.service";
import { AppIdService } from "jslib-common/services/appId.service"; import { AppIdService } from "jslib-common/services/appId.service";
import { AuditService } from "jslib-common/services/audit.service"; import { AuditService } from "jslib-common/services/audit.service";
import { AuthService } from "jslib-common/services/auth.service";
import { CipherService } from "jslib-common/services/cipher.service"; import { CipherService } from "jslib-common/services/cipher.service";
import { CollectionService } from "jslib-common/services/collection.service"; import { CollectionService } from "jslib-common/services/collection.service";
import { ContainerService } from "jslib-common/services/container.service"; import { ContainerService } from "jslib-common/services/container.service";
@@ -44,24 +40,22 @@ import { TotpService } from "jslib-common/services/totp.service";
import { TwoFactorService } from "jslib-common/services/twoFactor.service"; import { TwoFactorService } from "jslib-common/services/twoFactor.service";
import { UserVerificationService } from "jslib-common/services/userVerification.service"; import { UserVerificationService } from "jslib-common/services/userVerification.service";
import { VaultTimeoutService } from "jslib-common/services/vaultTimeout.service"; import { VaultTimeoutService } from "jslib-common/services/vaultTimeout.service";
import { CliPlatformUtilsService } from "jslib-node/cli/services/cliPlatformUtils.service";
import { ConsoleLogService } from "jslib-node/cli/services/consoleLog.service";
import { NodeApiService } from "jslib-node/services/nodeApi.service"; import { NodeApiService } from "jslib-node/services/nodeApi.service";
import { NodeCryptoFunctionService } from "jslib-node/services/nodeCryptoFunction.service"; import { NodeCryptoFunctionService } from "jslib-node/services/nodeCryptoFunction.service";
import { Program } from "./program"; import { Program } from "./program";
import { SendProgram } from "./send.program"; import { SendProgram } from "./send.program";
import { I18nService } from "./services/i18n.service";
import { LowdbStorageService } from "./services/lowdbStorage.service";
import { NodeEnvSecureStorageService } from "./services/nodeEnvSecureStorage.service";
import { VaultProgram } from "./vault.program"; import { VaultProgram } from "./vault.program";
import { Account } from "jslib-common/models/domain/account";
import { GlobalState } from "jslib-common/models/domain/globalState";
import { ApiLogInCredentials } from "jslib-common/models/domain/logInCredentials";
import { StateFactory } from "jslib-common/factories/stateFactory";
// Polyfills // Polyfills
(global as any).DOMParser = new jsdom.JSDOM().window.DOMParser; (global as any).DOMParser = new jsdom.JSDOM().window.DOMParser;
// tslint:disable-next-line // eslint-disable-next-line
const packageJson = require("../package.json"); const packageJson = require("../package.json");
export class Main { export class Main {

View File

@@ -1,7 +1,6 @@
import * as program from "commander"; import * as program from "commander";
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { StringResponse } from "jslib-node/cli/models/response/stringResponse"; import { StringResponse } from "jslib-node/cli/models/response/stringResponse";

View File

@@ -1,11 +1,8 @@
import { ApiService } from "jslib-common/abstractions/api.service"; import { ApiService } from "jslib-common/abstractions/api.service";
import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { OrganizationUserConfirmRequest } from "jslib-common/models/request/organizationUserConfirmRequest";
import { Response } from "jslib-node/cli/models/response";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { OrganizationUserConfirmRequest } from "jslib-common/models/request/organizationUserConfirmRequest";
import { Response } from "jslib-node/cli/models/response";
export class ConfirmCommand { export class ConfirmCommand {
constructor(private apiService: ApiService, private cryptoService: CryptoService) {} constructor(private apiService: ApiService, private cryptoService: CryptoService) {}

View File

@@ -4,7 +4,6 @@ import { ApiService } from "jslib-common/abstractions/api.service";
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { KeyConnectorService } from "jslib-common/abstractions/keyConnector.service"; import { KeyConnectorService } from "jslib-common/abstractions/keyConnector.service";
import { SyncService } from "jslib-common/abstractions/sync.service"; import { SyncService } from "jslib-common/abstractions/sync.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";

View File

@@ -6,26 +6,20 @@ import { CipherService } from "jslib-common/abstractions/cipher.service";
import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { FolderService } from "jslib-common/abstractions/folder.service"; import { FolderService } from "jslib-common/abstractions/folder.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { Utils } from "jslib-common/misc/utils";
import { Cipher } from "jslib-common/models/export/cipher"; import { Cipher } from "jslib-common/models/export/cipher";
import { Collection } from "jslib-common/models/export/collection"; import { Collection } from "jslib-common/models/export/collection";
import { Folder } from "jslib-common/models/export/folder"; import { Folder } from "jslib-common/models/export/folder";
import { CollectionRequest } from "jslib-common/models/request/collectionRequest"; import { CollectionRequest } from "jslib-common/models/request/collectionRequest";
import { SelectionReadOnlyRequest } from "jslib-common/models/request/selectionReadOnlyRequest"; import { SelectionReadOnlyRequest } from "jslib-common/models/request/selectionReadOnlyRequest";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { CipherResponse } from "../models/response/cipherResponse"; import { CipherResponse } from "../models/response/cipherResponse";
import { FolderResponse } from "../models/response/folderResponse"; import { FolderResponse } from "../models/response/folderResponse";
import { OrganizationCollectionResponse } from "../models/response/organizationCollectionResponse"; import { OrganizationCollectionResponse } from "../models/response/organizationCollectionResponse";
import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
import { Utils } from "jslib-common/misc/utils";
export class CreateCommand { export class CreateCommand {
constructor( constructor(
private cipherService: CipherService, private cipherService: CipherService,

View File

@@ -1,13 +1,10 @@
import * as program from "commander";
import { ApiService } from "jslib-common/abstractions/api.service"; import { ApiService } from "jslib-common/abstractions/api.service";
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
import { FolderService } from "jslib-common/abstractions/folder.service"; import { FolderService } from "jslib-common/abstractions/folder.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { Utils } from "jslib-common/misc/utils";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { Utils } from "jslib-common/misc/utils";
import { CliUtils } from "src/utils"; import { CliUtils } from "src/utils";
export class DeleteCommand { export class DeleteCommand {

View File

@@ -1,9 +1,7 @@
import * as fet from "node-fetch"; import * as fet from "node-fetch";
import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey"; import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { FileResponse } from "jslib-node/cli/models/response/fileResponse"; import { FileResponse } from "jslib-node/cli/models/response/fileResponse";

View File

@@ -1,29 +1,21 @@
import * as program from "commander";
import { ApiService } from "jslib-common/abstractions/api.service"; import { ApiService } from "jslib-common/abstractions/api.service";
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { FolderService } from "jslib-common/abstractions/folder.service"; import { FolderService } from "jslib-common/abstractions/folder.service";
import { Utils } from "jslib-common/misc/utils";
import { Cipher } from "jslib-common/models/export/cipher"; import { Cipher } from "jslib-common/models/export/cipher";
import { Collection } from "jslib-common/models/export/collection"; import { Collection } from "jslib-common/models/export/collection";
import { Folder } from "jslib-common/models/export/folder"; import { Folder } from "jslib-common/models/export/folder";
import { CollectionRequest } from "jslib-common/models/request/collectionRequest"; import { CollectionRequest } from "jslib-common/models/request/collectionRequest";
import { SelectionReadOnlyRequest } from "jslib-common/models/request/selectionReadOnlyRequest"; import { SelectionReadOnlyRequest } from "jslib-common/models/request/selectionReadOnlyRequest";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { CipherResponse } from "../models/response/cipherResponse"; import { CipherResponse } from "../models/response/cipherResponse";
import { FolderResponse } from "../models/response/folderResponse"; import { FolderResponse } from "../models/response/folderResponse";
import { OrganizationCollectionResponse } from "../models/response/organizationCollectionResponse"; import { OrganizationCollectionResponse } from "../models/response/organizationCollectionResponse";
import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
import { Utils } from "jslib-common/misc/utils";
export class EditCommand { export class EditCommand {
constructor( constructor(
private cipherService: CipherService, private cipherService: CipherService,

View File

@@ -3,12 +3,9 @@ import * as inquirer from "inquirer";
import { ExportFormat, ExportService } from "jslib-common/abstractions/export.service"; import { ExportFormat, ExportService } from "jslib-common/abstractions/export.service";
import { PolicyService } from "jslib-common/abstractions/policy.service"; import { PolicyService } from "jslib-common/abstractions/policy.service";
import { Response } from "jslib-node/cli/models/response";
import { PolicyType } from "jslib-common/enums/policyType"; import { PolicyType } from "jslib-common/enums/policyType";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { Response } from "jslib-node/cli/models/response";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";

View File

@@ -1,6 +1,5 @@
import { PasswordGenerationService } from "jslib-common/abstractions/passwordGeneration.service"; import { PasswordGenerationService } from "jslib-common/abstractions/passwordGeneration.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { StringResponse } from "jslib-node/cli/models/response/stringResponse"; import { StringResponse } from "jslib-node/cli/models/response/stringResponse";

View File

@@ -1,5 +1,3 @@
import { CipherType } from "jslib-common/enums/cipherType";
import { ApiService } from "jslib-common/abstractions/api.service"; import { ApiService } from "jslib-common/abstractions/api.service";
import { AuditService } from "jslib-common/abstractions/audit.service"; import { AuditService } from "jslib-common/abstractions/audit.service";
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
@@ -10,9 +8,11 @@ import { OrganizationService } from "jslib-common/abstractions/organization.serv
import { SearchService } from "jslib-common/abstractions/search.service"; import { SearchService } from "jslib-common/abstractions/search.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { TotpService } from "jslib-common/abstractions/totp.service"; import { TotpService } from "jslib-common/abstractions/totp.service";
import { CipherType } from "jslib-common/enums/cipherType";
import { SendType } from "jslib-common/enums/sendType";
import { Utils } from "jslib-common/misc/utils";
import { EncString } from "jslib-common/models/domain/encString";
import { Organization } from "jslib-common/models/domain/organization"; import { Organization } from "jslib-common/models/domain/organization";
import { Card } from "jslib-common/models/export/card"; import { Card } from "jslib-common/models/export/card";
import { Cipher } from "jslib-common/models/export/cipher"; import { Cipher } from "jslib-common/models/export/cipher";
import { Collection } from "jslib-common/models/export/collection"; import { Collection } from "jslib-common/models/export/collection";
@@ -22,19 +22,14 @@ import { Identity } from "jslib-common/models/export/identity";
import { Login } from "jslib-common/models/export/login"; import { Login } from "jslib-common/models/export/login";
import { LoginUri } from "jslib-common/models/export/loginUri"; import { LoginUri } from "jslib-common/models/export/loginUri";
import { SecureNote } from "jslib-common/models/export/secureNote"; import { SecureNote } from "jslib-common/models/export/secureNote";
import { ErrorResponse } from "jslib-common/models/response/errorResponse";
import { CipherView } from "jslib-common/models/view/cipherView"; import { CipherView } from "jslib-common/models/view/cipherView";
import { CollectionView } from "jslib-common/models/view/collectionView"; import { CollectionView } from "jslib-common/models/view/collectionView";
import { FolderView } from "jslib-common/models/view/folderView"; import { FolderView } from "jslib-common/models/view/folderView";
import { EncString } from "jslib-common/models/domain/encString";
import { ErrorResponse } from "jslib-common/models/response/errorResponse";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { StringResponse } from "jslib-node/cli/models/response/stringResponse"; import { StringResponse } from "jslib-node/cli/models/response/stringResponse";
import { SendType } from "jslib-common/enums/sendType"; import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { CipherResponse } from "../models/response/cipherResponse"; import { CipherResponse } from "../models/response/cipherResponse";
import { CollectionResponse } from "../models/response/collectionResponse"; import { CollectionResponse } from "../models/response/collectionResponse";
import { FolderResponse } from "../models/response/folderResponse"; import { FolderResponse } from "../models/response/folderResponse";
@@ -42,16 +37,10 @@ import { OrganizationCollectionResponse } from "../models/response/organizationC
import { OrganizationResponse } from "../models/response/organizationResponse"; import { OrganizationResponse } from "../models/response/organizationResponse";
import { SendResponse } from "../models/response/sendResponse"; import { SendResponse } from "../models/response/sendResponse";
import { TemplateResponse } from "../models/response/templateResponse"; import { TemplateResponse } from "../models/response/templateResponse";
import { OrganizationCollectionRequest } from "../models/request/organizationCollectionRequest";
import { SelectionReadOnly } from "../models/selectionReadOnly"; import { SelectionReadOnly } from "../models/selectionReadOnly";
import { DownloadCommand } from "./download.command";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
import { Utils } from "jslib-common/misc/utils"; import { DownloadCommand } from "./download.command";
export class GetCommand extends DownloadCommand { export class GetCommand extends DownloadCommand {
constructor( constructor(
@@ -525,7 +514,9 @@ export class GetCommand extends DownloadCommand {
const response = await this.apiService.getUserPublicKey(id); const response = await this.apiService.getUserPublicKey(id);
const pubKey = Utils.fromB64ToArray(response.publicKey); const pubKey = Utils.fromB64ToArray(response.publicKey);
fingerprint = await this.cryptoService.getFingerprint(id, pubKey.buffer); fingerprint = await this.cryptoService.getFingerprint(id, pubKey.buffer);
} catch {} } catch {
// eslint-disable-next-line
}
} }
if (fingerprint == null) { if (fingerprint == null) {

View File

@@ -4,9 +4,7 @@ import * as inquirer from "inquirer";
import { ImportService } from "jslib-common/abstractions/import.service"; import { ImportService } from "jslib-common/abstractions/import.service";
import { OrganizationService } from "jslib-common/abstractions/organization.service"; import { OrganizationService } from "jslib-common/abstractions/organization.service";
import { ImportType } from "jslib-common/enums/importOptions"; import { ImportType } from "jslib-common/enums/importOptions";
import { Importer } from "jslib-common/importers/importer"; import { Importer } from "jslib-common/importers/importer";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";

View File

@@ -1,22 +1,18 @@
import { CipherView } from "jslib-common/models/view/cipherView";
import { ApiService } from "jslib-common/abstractions/api.service"; import { ApiService } from "jslib-common/abstractions/api.service";
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
import { CollectionService } from "jslib-common/abstractions/collection.service"; import { CollectionService } from "jslib-common/abstractions/collection.service";
import { FolderService } from "jslib-common/abstractions/folder.service"; import { FolderService } from "jslib-common/abstractions/folder.service";
import { OrganizationService } from "jslib-common/abstractions/organization.service"; import { OrganizationService } from "jslib-common/abstractions/organization.service";
import { SearchService } from "jslib-common/abstractions/search.service"; import { SearchService } from "jslib-common/abstractions/search.service";
import { Utils } from "jslib-common/misc/utils";
import { CollectionData } from "jslib-common/models/data/collectionData";
import { Collection } from "jslib-common/models/domain/collection";
import { import {
CollectionDetailsResponse as ApiCollectionDetailsResponse, CollectionDetailsResponse as ApiCollectionDetailsResponse,
CollectionResponse as ApiCollectionResponse, CollectionResponse as ApiCollectionResponse,
} from "jslib-common/models/response/collectionResponse"; } from "jslib-common/models/response/collectionResponse";
import { ListResponse as ApiListResponse } from "jslib-common/models/response/listResponse"; import { ListResponse as ApiListResponse } from "jslib-common/models/response/listResponse";
import { CipherView } from "jslib-common/models/view/cipherView";
import { CollectionData } from "jslib-common/models/data/collectionData";
import { Collection } from "jslib-common/models/domain/collection";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { ListResponse } from "jslib-node/cli/models/response/listResponse"; import { ListResponse } from "jslib-node/cli/models/response/listResponse";
@@ -25,11 +21,8 @@ import { CollectionResponse } from "../models/response/collectionResponse";
import { FolderResponse } from "../models/response/folderResponse"; import { FolderResponse } from "../models/response/folderResponse";
import { OrganizationResponse } from "../models/response/organizationResponse"; import { OrganizationResponse } from "../models/response/organizationResponse";
import { OrganizationUserResponse } from "../models/response/organizationUserResponse"; import { OrganizationUserResponse } from "../models/response/organizationUserResponse";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
import { Utils } from "jslib-common/misc/utils";
export class ListCommand { export class ListCommand {
constructor( constructor(
private cipherService: CipherService, private cipherService: CipherService,

View File

@@ -1,5 +1,4 @@
import { VaultTimeoutService } from "jslib-common/abstractions/vaultTimeout.service"; import { VaultTimeoutService } from "jslib-common/abstractions/vaultTimeout.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";

View File

@@ -13,12 +13,9 @@ import { PolicyService } from "jslib-common/abstractions/policy.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { SyncService } from "jslib-common/abstractions/sync.service"; import { SyncService } from "jslib-common/abstractions/sync.service";
import { TwoFactorService } from "jslib-common/abstractions/twoFactor.service"; import { TwoFactorService } from "jslib-common/abstractions/twoFactor.service";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { LoginCommand as BaseLoginCommand } from "jslib-node/cli/commands/login.command"; import { LoginCommand as BaseLoginCommand } from "jslib-node/cli/commands/login.command";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
export class LoginCommand extends BaseLoginCommand { export class LoginCommand extends BaseLoginCommand {
private options: program.OptionValues; private options: program.OptionValues;

View File

@@ -1,5 +1,4 @@
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
export class RestoreCommand { export class RestoreCommand {

View File

@@ -4,16 +4,12 @@ import * as path from "path";
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { SendType } from "jslib-common/enums/sendType"; import { SendType } from "jslib-common/enums/sendType";
import { NodeUtils } from "jslib-common/misc/nodeUtils"; import { NodeUtils } from "jslib-common/misc/nodeUtils";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { SendResponse } from "../../models/response/sendResponse"; import { SendResponse } from "../../models/response/sendResponse";
import { SendTextResponse } from "../../models/response/sendTextResponse"; import { SendTextResponse } from "../../models/response/sendTextResponse";
import { CliUtils } from "../../utils"; import { CliUtils } from "../../utils";
export class SendCreateCommand { export class SendCreateCommand {

View File

@@ -1,5 +1,4 @@
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
export class SendDeleteCommand { export class SendDeleteCommand {

View File

@@ -1,12 +1,11 @@
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { SendType } from "jslib-common/enums/sendType"; import { SendType } from "jslib-common/enums/sendType";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { SendResponse } from "../../models/response/sendResponse"; import { SendResponse } from "../../models/response/sendResponse";
import { CliUtils } from "../../utils"; import { CliUtils } from "../../utils";
import { SendGetCommand } from "./get.command"; import { SendGetCommand } from "./get.command";
export class SendEditCommand { export class SendEditCommand {

View File

@@ -4,16 +4,12 @@ import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { SearchService } from "jslib-common/abstractions/search.service"; import { SearchService } from "jslib-common/abstractions/search.service";
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { Utils } from "jslib-common/misc/utils";
import { SendView } from "jslib-common/models/view/sendView"; import { SendView } from "jslib-common/models/view/sendView";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { DownloadCommand } from "../download.command";
import { SendResponse } from "../../models/response/sendResponse"; import { SendResponse } from "../../models/response/sendResponse";
import { DownloadCommand } from "../download.command";
import { Utils } from "jslib-common/misc/utils";
export class SendGetCommand extends DownloadCommand { export class SendGetCommand extends DownloadCommand {
constructor( constructor(

View File

@@ -1,7 +1,6 @@
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { SearchService } from "jslib-common/abstractions/search.service"; import { SearchService } from "jslib-common/abstractions/search.service";
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { ListResponse } from "jslib-node/cli/models/response/listResponse"; import { ListResponse } from "jslib-node/cli/models/response/listResponse";

View File

@@ -6,23 +6,17 @@ import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { CryptoFunctionService } from "jslib-common/abstractions/cryptoFunction.service"; import { CryptoFunctionService } from "jslib-common/abstractions/cryptoFunction.service";
import { EnvironmentService } from "jslib-common/abstractions/environment.service"; import { EnvironmentService } from "jslib-common/abstractions/environment.service";
import { PlatformUtilsService } from "jslib-common/abstractions/platformUtils.service"; import { PlatformUtilsService } from "jslib-common/abstractions/platformUtils.service";
import { SendType } from "jslib-common/enums/sendType";
import { NodeUtils } from "jslib-common/misc/nodeUtils";
import { Utils } from "jslib-common/misc/utils";
import { SendAccess } from "jslib-common/models/domain/sendAccess";
import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey";
import { SendAccessRequest } from "jslib-common/models/request/sendAccessRequest"; import { SendAccessRequest } from "jslib-common/models/request/sendAccessRequest";
import { ErrorResponse } from "jslib-common/models/response/errorResponse"; import { ErrorResponse } from "jslib-common/models/response/errorResponse";
import { SendAccessView } from "jslib-common/models/view/sendAccessView"; import { SendAccessView } from "jslib-common/models/view/sendAccessView";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { SendAccess } from "jslib-common/models/domain/sendAccess";
import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey";
import { SendType } from "jslib-common/enums/sendType";
import { NodeUtils } from "jslib-common/misc/nodeUtils";
import { Utils } from "jslib-common/misc/utils";
import { SendAccessResponse } from "../../models/response/sendAccessResponse"; import { SendAccessResponse } from "../../models/response/sendAccessResponse";
import { DownloadCommand } from "../download.command"; import { DownloadCommand } from "../download.command";
export class SendReceiveCommand extends DownloadCommand { export class SendReceiveCommand extends DownloadCommand {
@@ -89,7 +83,7 @@ export class SendReceiveCommand extends DownloadCommand {
// Write to stdout and response success so we get the text string only to stdout // Write to stdout and response success so we get the text string only to stdout
process.stdout.write(response?.text?.text); process.stdout.write(response?.text?.text);
return Response.success(); return Response.success();
case SendType.File: case SendType.File: {
const downloadData = await this.apiService.getSendFileDownloadData( const downloadData = await this.apiService.getSendFileDownloadData(
response, response,
this.sendAccessRequest, this.sendAccessRequest,
@@ -101,6 +95,7 @@ export class SendReceiveCommand extends DownloadCommand {
response?.file?.fileName, response?.file?.fileName,
options.output options.output
); );
}
default: default:
return Response.success(new SendAccessResponse(response)); return Response.success(new SendAccessResponse(response));
} }

View File

@@ -1,5 +1,4 @@
import { SendService } from "jslib-common/abstractions/send.service"; import { SendService } from "jslib-common/abstractions/send.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { SendResponse } from "../../models/response/sendResponse"; import { SendResponse } from "../../models/response/sendResponse";

View File

@@ -5,6 +5,10 @@ import * as koa from "koa";
import * as koaBodyParser from "koa-bodyparser"; import * as koaBodyParser from "koa-bodyparser";
import * as koaJson from "koa-json"; import * as koaJson from "koa-json";
import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions";
import { Response } from "jslib-node/cli/models/response";
import { FileResponse } from "jslib-node/cli/models/response/fileResponse";
import { Main } from "../bw"; import { Main } from "../bw";
import { ConfirmCommand } from "./confirm.command"; import { ConfirmCommand } from "./confirm.command";
@@ -16,22 +20,16 @@ import { GetCommand } from "./get.command";
import { ListCommand } from "./list.command"; import { ListCommand } from "./list.command";
import { LockCommand } from "./lock.command"; import { LockCommand } from "./lock.command";
import { RestoreCommand } from "./restore.command"; import { RestoreCommand } from "./restore.command";
import { ShareCommand } from "./share.command";
import { StatusCommand } from "./status.command";
import { SyncCommand } from "./sync.command";
import { UnlockCommand } from "./unlock.command";
import { SendCreateCommand } from "./send/create.command"; import { SendCreateCommand } from "./send/create.command";
import { SendDeleteCommand } from "./send/delete.command"; import { SendDeleteCommand } from "./send/delete.command";
import { SendEditCommand } from "./send/edit.command"; import { SendEditCommand } from "./send/edit.command";
import { SendGetCommand } from "./send/get.command"; import { SendGetCommand } from "./send/get.command";
import { SendListCommand } from "./send/list.command"; import { SendListCommand } from "./send/list.command";
import { SendRemovePasswordCommand } from "./send/removePassword.command"; import { SendRemovePasswordCommand } from "./send/removePassword.command";
import { ShareCommand } from "./share.command";
import { Response } from "jslib-node/cli/models/response"; import { StatusCommand } from "./status.command";
import { FileResponse } from "jslib-node/cli/models/response/fileResponse"; import { SyncCommand } from "./sync.command";
import { UnlockCommand } from "./unlock.command";
import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions";
export class ServeCommand { export class ServeCommand {
private listCommand: ListCommand; private listCommand: ListCommand;

View File

@@ -1,9 +1,7 @@
import { CipherService } from "jslib-common/abstractions/cipher.service"; import { CipherService } from "jslib-common/abstractions/cipher.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { CipherResponse } from "../models/response/cipherResponse"; import { CipherResponse } from "../models/response/cipherResponse";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
export class ShareCommand { export class ShareCommand {

View File

@@ -2,7 +2,6 @@ import { EnvironmentService } from "jslib-common/abstractions/environment.servic
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { SyncService } from "jslib-common/abstractions/sync.service"; import { SyncService } from "jslib-common/abstractions/sync.service";
import { VaultTimeoutService } from "jslib-common/abstractions/vaultTimeout.service"; import { VaultTimeoutService } from "jslib-common/abstractions/vaultTimeout.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { TemplateResponse } from "../models/response/templateResponse"; import { TemplateResponse } from "../models/response/templateResponse";

View File

@@ -1,5 +1,4 @@
import { SyncService } from "jslib-common/abstractions/sync.service"; import { SyncService } from "jslib-common/abstractions/sync.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { StringResponse } from "jslib-node/cli/models/response/stringResponse"; import { StringResponse } from "jslib-node/cli/models/response/stringResponse";
@@ -16,7 +15,7 @@ export class SyncCommand {
} }
try { try {
const result = await this.syncService.fullSync(normalizedOptions.force, true); await this.syncService.fullSync(normalizedOptions.force, true);
const res = new MessageResponse("Syncing complete.", null); const res = new MessageResponse("Syncing complete.", null);
return Response.success(res); return Response.success(res);
} catch (e) { } catch (e) {

View File

@@ -5,18 +5,15 @@ import { EnvironmentService } from "jslib-common/abstractions/environment.servic
import { KeyConnectorService } from "jslib-common/abstractions/keyConnector.service"; import { KeyConnectorService } from "jslib-common/abstractions/keyConnector.service";
import { StateService } from "jslib-common/abstractions/state.service"; import { StateService } from "jslib-common/abstractions/state.service";
import { SyncService } from "jslib-common/abstractions/sync.service"; import { SyncService } from "jslib-common/abstractions/sync.service";
import { HashPurpose } from "jslib-common/enums/hashPurpose";
import { Utils } from "jslib-common/misc/utils";
import { SecretVerificationRequest } from "jslib-common/models/request/secretVerificationRequest";
import { ConsoleLogService } from "jslib-common/services/consoleLog.service";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { SecretVerificationRequest } from "jslib-common/models/request/secretVerificationRequest";
import { Utils } from "jslib-common/misc/utils";
import { CliUtils } from "../utils"; import { CliUtils } from "../utils";
import { HashPurpose } from "jslib-common/enums/hashPurpose";
import { ConsoleLogService } from "jslib-common/services/consoleLog.service";
import { ConvertToKeyConnectorCommand } from "./convertToKeyConnector.command"; import { ConvertToKeyConnectorCommand } from "./convertToKeyConnector.command";
export class UnlockCommand { export class UnlockCommand {
@@ -33,7 +30,6 @@ export class UnlockCommand {
) {} ) {}
async run(password: string, cmdOptions: Record<string, any>) { async run(password: string, cmdOptions: Record<string, any>) {
const canInteract = process.env.BW_NOINTERACTION !== "true";
const normalizedOptions = new Options(cmdOptions); const normalizedOptions = new Options(cmdOptions);
const passwordResult = await CliUtils.getPassword(password, normalizedOptions, this.logService); const passwordResult = await CliUtils.getPassword(password, normalizedOptions, this.logService);
@@ -71,7 +67,9 @@ export class UnlockCommand {
HashPurpose.LocalAuthorization HashPurpose.LocalAuthorization
); );
await this.cryptoService.setKeyHash(localKeyHash); await this.cryptoService.setKeyHash(localKeyHash);
} catch {} } catch {
// Ignore
}
} }
} }

View File

@@ -1,14 +1,12 @@
import { CipherType } from "jslib-common/enums/cipherType";
import { CipherWithIds } from "jslib-common/models/export/cipherWithIds"; import { CipherWithIds } from "jslib-common/models/export/cipherWithIds";
import { CipherView } from "jslib-common/models/view/cipherView"; import { CipherView } from "jslib-common/models/view/cipherView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse"; import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { AttachmentResponse } from "./attachmentResponse"; import { AttachmentResponse } from "./attachmentResponse";
import { LoginResponse } from "./loginResponse"; import { LoginResponse } from "./loginResponse";
import { PasswordHistoryResponse } from "./passwordHistoryResponse"; import { PasswordHistoryResponse } from "./passwordHistoryResponse";
import { CipherType } from "jslib-common/enums/cipherType";
export class CipherResponse extends CipherWithIds implements BaseResponse { export class CipherResponse extends CipherWithIds implements BaseResponse {
object: string; object: string;
attachments: AttachmentResponse[]; attachments: AttachmentResponse[];

View File

@@ -1,6 +1,5 @@
import { CollectionWithId } from "jslib-common/models/export/collectionWithId"; import { CollectionWithId } from "jslib-common/models/export/collectionWithId";
import { CollectionView } from "jslib-common/models/view/collectionView"; import { CollectionView } from "jslib-common/models/view/collectionView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse"; import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
export class CollectionResponse extends CollectionWithId implements BaseResponse { export class CollectionResponse extends CollectionWithId implements BaseResponse {

View File

@@ -1,6 +1,5 @@
import { FolderWithId } from "jslib-common/models/export/folderWithId"; import { FolderWithId } from "jslib-common/models/export/folderWithId";
import { FolderView } from "jslib-common/models/view/folderView"; import { FolderView } from "jslib-common/models/view/folderView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse"; import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
export class FolderResponse extends FolderWithId implements BaseResponse { export class FolderResponse extends FolderWithId implements BaseResponse {

View File

@@ -1,9 +1,7 @@
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { Organization } from "jslib-common/models/domain/organization";
import { OrganizationUserStatusType } from "jslib-common/enums/organizationUserStatusType"; import { OrganizationUserStatusType } from "jslib-common/enums/organizationUserStatusType";
import { OrganizationUserType } from "jslib-common/enums/organizationUserType"; import { OrganizationUserType } from "jslib-common/enums/organizationUserType";
import { Organization } from "jslib-common/models/domain/organization";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
export class OrganizationResponse implements BaseResponse { export class OrganizationResponse implements BaseResponse {
object: string; object: string;

View File

@@ -1,7 +1,6 @@
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { OrganizationUserStatusType } from "jslib-common/enums/organizationUserStatusType"; import { OrganizationUserStatusType } from "jslib-common/enums/organizationUserStatusType";
import { OrganizationUserType } from "jslib-common/enums/organizationUserType"; import { OrganizationUserType } from "jslib-common/enums/organizationUserType";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
export class OrganizationUserResponse implements BaseResponse { export class OrganizationUserResponse implements BaseResponse {
object: string; object: string;

View File

@@ -1,7 +1,5 @@
import { SendType } from "jslib-common/enums/sendType"; import { SendType } from "jslib-common/enums/sendType";
import { SendAccessView } from "jslib-common/models/view/sendAccessView"; import { SendAccessView } from "jslib-common/models/view/sendAccessView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse"; import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { SendFileResponse } from "./sendFileResponse"; import { SendFileResponse } from "./sendFileResponse";

View File

@@ -1,10 +1,7 @@
import { SendView } from "jslib-common/models/view/sendView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { SendType } from "jslib-common/enums/sendType"; import { SendType } from "jslib-common/enums/sendType";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { SendView } from "jslib-common/models/view/sendView";
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
import { SendFileResponse } from "./sendFileResponse"; import { SendFileResponse } from "./sendFileResponse";
import { SendTextResponse } from "./sendTextResponse"; import { SendTextResponse } from "./sendTextResponse";

View File

@@ -1,8 +1,15 @@
import * as chalk from "chalk"; import * as chalk from "chalk";
import * as program from "commander"; import * as program from "commander";
import { Main } from "./bw"; import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions";
import { BaseProgram } from "jslib-node/cli/baseProgram";
import { LogoutCommand } from "jslib-node/cli/commands/logout.command";
import { UpdateCommand } from "jslib-node/cli/commands/update.command";
import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { Main } from "./bw";
import { CompletionCommand } from "./commands/completion.command";
import { ConfigCommand } from "./commands/config.command"; import { ConfigCommand } from "./commands/config.command";
import { EncodeCommand } from "./commands/encode.command"; import { EncodeCommand } from "./commands/encode.command";
import { GenerateCommand } from "./commands/generate.command"; import { GenerateCommand } from "./commands/generate.command";
@@ -12,22 +19,9 @@ import { ServeCommand } from "./commands/serve.command";
import { StatusCommand } from "./commands/status.command"; import { StatusCommand } from "./commands/status.command";
import { SyncCommand } from "./commands/sync.command"; import { SyncCommand } from "./commands/sync.command";
import { UnlockCommand } from "./commands/unlock.command"; import { UnlockCommand } from "./commands/unlock.command";
import { CompletionCommand } from "./commands/completion.command";
import { LogoutCommand } from "jslib-node/cli/commands/logout.command";
import { UpdateCommand } from "jslib-node/cli/commands/update.command";
import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { TemplateResponse } from "./models/response/templateResponse"; import { TemplateResponse } from "./models/response/templateResponse";
import { CliUtils } from "./utils"; import { CliUtils } from "./utils";
import { BaseProgram } from "jslib-node/cli/baseProgram";
import { KeySuffixOptions } from "jslib-common/enums/keySuffixOptions";
const writeLn = CliUtils.writeLn; const writeLn = CliUtils.writeLn;
export class Program extends BaseProgram { export class Program extends BaseProgram {

View File

@@ -1,14 +1,14 @@
import * as chalk from "chalk";
import * as program from "commander";
import * as fs from "fs"; import * as fs from "fs";
import * as path from "path"; import * as path from "path";
import { Response } from "jslib-node/cli/models/response"; import * as chalk from "chalk";
import * as program from "commander";
import { SendType } from "jslib-common/enums/sendType"; import { SendType } from "jslib-common/enums/sendType";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { Response } from "jslib-node/cli/models/response";
import { Main } from "./bw";
import { GetCommand } from "./commands/get.command"; import { GetCommand } from "./commands/get.command";
import { SendCreateCommand } from "./commands/send/create.command"; import { SendCreateCommand } from "./commands/send/create.command";
import { SendDeleteCommand } from "./commands/send/delete.command"; import { SendDeleteCommand } from "./commands/send/delete.command";
@@ -17,12 +17,9 @@ import { SendGetCommand } from "./commands/send/get.command";
import { SendListCommand } from "./commands/send/list.command"; import { SendListCommand } from "./commands/send/list.command";
import { SendReceiveCommand } from "./commands/send/receive.command"; import { SendReceiveCommand } from "./commands/send/receive.command";
import { SendRemovePasswordCommand } from "./commands/send/removePassword.command"; import { SendRemovePasswordCommand } from "./commands/send/removePassword.command";
import { SendFileResponse } from "./models/response/sendFileResponse"; import { SendFileResponse } from "./models/response/sendFileResponse";
import { SendResponse } from "./models/response/sendResponse"; import { SendResponse } from "./models/response/sendResponse";
import { SendTextResponse } from "./models/response/sendTextResponse"; import { SendTextResponse } from "./models/response/sendTextResponse";
import { Main } from "./bw";
import { Program } from "./program"; import { Program } from "./program";
import { CliUtils } from "./utils"; import { CliUtils } from "./utils";

View File

@@ -2,10 +2,8 @@ import * as lock from "proper-lockfile";
import { OperationOptions } from "retry"; import { OperationOptions } from "retry";
import { LogService } from "jslib-common/abstractions/log.service"; import { LogService } from "jslib-common/abstractions/log.service";
import { LowdbStorageService as LowdbStorageServiceBase } from "jslib-node/services/lowdbStorage.service";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { LowdbStorageService as LowdbStorageServiceBase } from "jslib-node/services/lowdbStorage.service";
const retries: OperationOptions = { const retries: OperationOptions = {
retries: 50, retries: 50,

View File

@@ -1,9 +1,8 @@
import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoService } from "jslib-common/abstractions/crypto.service";
import { LogService } from "jslib-common/abstractions/log.service"; import { LogService } from "jslib-common/abstractions/log.service";
import { StorageService } from "jslib-common/abstractions/storage.service"; import { StorageService } from "jslib-common/abstractions/storage.service";
import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey";
import { Utils } from "jslib-common/misc/utils"; import { Utils } from "jslib-common/misc/utils";
import { SymmetricCryptoKey } from "jslib-common/models/domain/symmetricCryptoKey";
export class NodeEnvSecureStorageService implements StorageService { export class NodeEnvSecureStorageService implements StorageService {
constructor( constructor(

View File

@@ -1,25 +1,22 @@
import * as program from "commander";
import * as fs from "fs"; import * as fs from "fs";
import * as inquirer from "inquirer";
import * as path from "path"; import * as path from "path";
import * as inquirer from "inquirer";
import * as JSZip from "jszip"; import * as JSZip from "jszip";
import { Response } from "jslib-node/cli/models/response"; import { LogService } from "jslib-common/abstractions/log.service";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse"; import { NodeUtils } from "jslib-common/misc/nodeUtils";
import { Utils } from "jslib-common/misc/utils";
import { Organization } from "jslib-common/models/domain/organization"; import { Organization } from "jslib-common/models/domain/organization";
import { CollectionView } from "jslib-common/models/view/collectionView"; import { CollectionView } from "jslib-common/models/view/collectionView";
import { FolderView } from "jslib-common/models/view/folderView"; import { FolderView } from "jslib-common/models/view/folderView";
import { Response } from "jslib-node/cli/models/response";
import { MessageResponse } from "jslib-node/cli/models/response/messageResponse";
import { NodeUtils } from "jslib-common/misc/nodeUtils";
import { FlagName, Flags } from "./flags"; import { FlagName, Flags } from "./flags";
import { LogService } from "jslib-common/abstractions/log.service";
import { Utils } from "jslib-common/misc/utils";
export class CliUtils { export class CliUtils {
static writeLn(s: string, finalLine: boolean = false, error: boolean = false) { static writeLn(s: string, finalLine = false, error = false) {
const stream = error ? process.stderr : process.stdout; const stream = error ? process.stderr : process.stdout;
if (finalLine && (process.platform === "win32" || !stream.isTTY)) { if (finalLine && (process.platform === "win32" || !stream.isTTY)) {
stream.write(s); stream.write(s);
@@ -140,7 +137,7 @@ export class CliUtils {
static readStdin(): Promise<string> { static readStdin(): Promise<string> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
let input: string = ""; let input = "";
if (process.stdin.isTTY) { if (process.stdin.isTTY) {
resolve(input); resolve(input);
@@ -149,6 +146,7 @@ export class CliUtils {
process.stdin.setEncoding("utf8"); process.stdin.setEncoding("utf8");
process.stdin.on("readable", () => { process.stdin.on("readable", () => {
// eslint-disable-next-line
while (true) { while (true) {
const chunk = process.stdin.read(); const chunk = process.stdin.read();
if (chunk == null) { if (chunk == null) {

View File

@@ -1,10 +1,8 @@
import * as chalk from "chalk";
import * as program from "commander"; import * as program from "commander";
import { Response } from "jslib-node/cli/models/response"; import { Response } from "jslib-node/cli/models/response";
import { Main } from "./bw"; import { Main } from "./bw";
import { ConfirmCommand } from "./commands/confirm.command"; import { ConfirmCommand } from "./commands/confirm.command";
import { CreateCommand } from "./commands/create.command"; import { CreateCommand } from "./commands/create.command";
import { DeleteCommand } from "./commands/delete.command"; import { DeleteCommand } from "./commands/delete.command";
@@ -15,10 +13,8 @@ import { ImportCommand } from "./commands/import.command";
import { ListCommand } from "./commands/list.command"; import { ListCommand } from "./commands/list.command";
import { RestoreCommand } from "./commands/restore.command"; import { RestoreCommand } from "./commands/restore.command";
import { ShareCommand } from "./commands/share.command"; import { ShareCommand } from "./commands/share.command";
import { CliUtils } from "./utils";
import { Program } from "./program"; import { Program } from "./program";
import { CliUtils } from "./utils";
const writeLn = CliUtils.writeLn; const writeLn = CliUtils.writeLn;

View File

@@ -15,11 +15,6 @@ const envConfig = config.load(ENV);
config.log(envConfig); config.log(envConfig);
const moduleRules = [ const moduleRules = [
{
test: /\.ts$/,
enforce: "pre",
loader: "tslint-loader",
},
{ {
test: /\.ts$/, test: /\.ts$/,
use: "ts-loader", use: "ts-loader",