@internxt/cli 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +11 -0
- package/README.md +297 -0
- package/bin/dev.cmd +3 -0
- package/bin/dev.js +7 -0
- package/bin/run.cmd +3 -0
- package/bin/run.js +7 -0
- package/dist/commands/config.d.ts +18 -0
- package/dist/commands/config.js +50 -0
- package/dist/commands/download.d.ts +19 -0
- package/dist/commands/download.js +119 -0
- package/dist/commands/list.d.ts +22 -0
- package/dist/commands/list.js +125 -0
- package/dist/commands/login.d.ts +21 -0
- package/dist/commands/login.js +124 -0
- package/dist/commands/logout.d.ts +9 -0
- package/dist/commands/logout.js +28 -0
- package/dist/commands/logs.d.ts +6 -0
- package/dist/commands/logs.js +12 -0
- package/dist/commands/move.d.ts +18 -0
- package/dist/commands/move.js +109 -0
- package/dist/commands/trash.d.ts +15 -0
- package/dist/commands/trash.js +85 -0
- package/dist/commands/upload.d.ts +15 -0
- package/dist/commands/upload.js +93 -0
- package/dist/commands/webdav.d.ts +12 -0
- package/dist/commands/webdav.js +64 -0
- package/dist/commands/whoami.d.ts +9 -0
- package/dist/commands/whoami.js +27 -0
- package/dist/database/migrations/20240402164914-create-files.d.ts +1 -0
- package/dist/database/migrations/20240402164914-create-files.js +55 -0
- package/dist/database/migrations/20240402165418-create-folders.d.ts +1 -0
- package/dist/database/migrations/20240402165418-create-folders.js +37 -0
- package/dist/hooks/prerun/auth_check.d.ts +3 -0
- package/dist/hooks/prerun/auth_check.js +32 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +5 -0
- package/dist/services/auth.service.d.ts +14 -0
- package/dist/services/auth.service.js +79 -0
- package/dist/services/config.service.d.ts +19 -0
- package/dist/services/config.service.js +79 -0
- package/dist/services/crypto.service.d.ts +22 -0
- package/dist/services/crypto.service.js +126 -0
- package/dist/services/database/drive-database-manager.service.d.ts +18 -0
- package/dist/services/database/drive-database-manager.service.js +76 -0
- package/dist/services/database/drive-file/drive-file.attributes.d.ts +14 -0
- package/dist/services/database/drive-file/drive-file.attributes.js +2 -0
- package/dist/services/database/drive-file/drive-file.domain.d.ts +18 -0
- package/dist/services/database/drive-file/drive-file.domain.js +51 -0
- package/dist/services/database/drive-file/drive-file.model.d.ts +17 -0
- package/dist/services/database/drive-file/drive-file.model.js +82 -0
- package/dist/services/database/drive-file/drive-file.repository.d.ts +11 -0
- package/dist/services/database/drive-file/drive-file.repository.js +40 -0
- package/dist/services/database/drive-folder/drive-folder.attributes.d.ts +9 -0
- package/dist/services/database/drive-folder/drive-folder.attributes.js +2 -0
- package/dist/services/database/drive-folder/drive-folder.domain.d.ts +13 -0
- package/dist/services/database/drive-folder/drive-folder.domain.js +36 -0
- package/dist/services/database/drive-folder/drive-folder.model.d.ts +12 -0
- package/dist/services/database/drive-folder/drive-folder.model.js +56 -0
- package/dist/services/database/drive-folder/drive-folder.repository.d.ts +11 -0
- package/dist/services/database/drive-folder/drive-folder.repository.js +40 -0
- package/dist/services/drive/drive-file.service.d.ts +15 -0
- package/dist/services/drive/drive-file.service.js +51 -0
- package/dist/services/drive/drive-folder.service.d.ts +15 -0
- package/dist/services/drive/drive-folder.service.js +49 -0
- package/dist/services/drive/trash.service.d.ts +5 -0
- package/dist/services/drive/trash.service.js +12 -0
- package/dist/services/keys.service.d.ts +14 -0
- package/dist/services/keys.service.js +110 -0
- package/dist/services/network/download.service.d.ts +7 -0
- package/dist/services/network/download.service.js +33 -0
- package/dist/services/network/network-facade.service.d.ts +21 -0
- package/dist/services/network/network-facade.service.js +128 -0
- package/dist/services/network/upload.service.d.ts +9 -0
- package/dist/services/network/upload.service.js +20 -0
- package/dist/services/realms/drive-files.realm.d.ts +23 -0
- package/dist/services/realms/drive-files.realm.js +76 -0
- package/dist/services/realms/drive-folders.realm.d.ts +20 -0
- package/dist/services/realms/drive-folders.realm.js +68 -0
- package/dist/services/realms/drive-realm-manager.service.d.ts +15 -0
- package/dist/services/realms/drive-realm-manager.service.js +63 -0
- package/dist/services/sdk-manager.service.d.ts +28 -0
- package/dist/services/sdk-manager.service.js +107 -0
- package/dist/services/usage.service.d.ts +6 -0
- package/dist/services/usage.service.js +23 -0
- package/dist/services/validation.service.d.ts +7 -0
- package/dist/services/validation.service.js +21 -0
- package/dist/types/command.types.d.ts +42 -0
- package/dist/types/command.types.js +59 -0
- package/dist/types/config.types.d.ts +13 -0
- package/dist/types/config.types.js +2 -0
- package/dist/types/drive.types.d.ts +14 -0
- package/dist/types/drive.types.js +2 -0
- package/dist/types/keys.types.d.ts +16 -0
- package/dist/types/keys.types.js +31 -0
- package/dist/types/network.types.d.ts +11 -0
- package/dist/types/network.types.js +2 -0
- package/dist/types/webdav.types.d.ts +15 -0
- package/dist/types/webdav.types.js +6 -0
- package/dist/utils/cli.utils.d.ts +32 -0
- package/dist/utils/cli.utils.js +105 -0
- package/dist/utils/crypto.utils.d.ts +6 -0
- package/dist/utils/crypto.utils.js +10 -0
- package/dist/utils/drive.utils.d.ts +6 -0
- package/dist/utils/drive.utils.js +34 -0
- package/dist/utils/errors.utils.d.ts +19 -0
- package/dist/utils/errors.utils.js +50 -0
- package/dist/utils/format.utils.d.ts +6 -0
- package/dist/utils/format.utils.js +30 -0
- package/dist/utils/hash.utils.d.ts +15 -0
- package/dist/utils/hash.utils.js +37 -0
- package/dist/utils/logger.utils.d.ts +3 -0
- package/dist/utils/logger.utils.js +50 -0
- package/dist/utils/network.utils.d.ts +22 -0
- package/dist/utils/network.utils.js +49 -0
- package/dist/utils/pm2.utils.d.ts +10 -0
- package/dist/utils/pm2.utils.js +65 -0
- package/dist/utils/stream.utils.d.ts +7 -0
- package/dist/utils/stream.utils.js +56 -0
- package/dist/utils/webdav.utils.d.ts +7 -0
- package/dist/utils/webdav.utils.js +47 -0
- package/dist/utils/xml.utils.d.ts +8 -0
- package/dist/utils/xml.utils.js +23 -0
- package/dist/webdav/handlers/GET.handler.d.ts +23 -0
- package/dist/webdav/handlers/GET.handler.js +52 -0
- package/dist/webdav/handlers/HEAD.handler.d.ts +5 -0
- package/dist/webdav/handlers/HEAD.handler.js +9 -0
- package/dist/webdav/handlers/OPTIONS.handler.d.ts +5 -0
- package/dist/webdav/handlers/OPTIONS.handler.js +11 -0
- package/dist/webdav/handlers/PROPFIND.handler.d.ts +21 -0
- package/dist/webdav/handlers/PROPFIND.handler.js +234 -0
- package/dist/webdav/handlers/PUT.handler.d.ts +23 -0
- package/dist/webdav/handlers/PUT.handler.js +51 -0
- package/dist/webdav/index.d.ts +1 -0
- package/dist/webdav/index.js +30 -0
- package/dist/webdav/middewares/auth.middleware.d.ts +3 -0
- package/dist/webdav/middewares/auth.middleware.js +27 -0
- package/dist/webdav/middewares/errors.middleware.d.ts +2 -0
- package/dist/webdav/middewares/errors.middleware.js +20 -0
- package/dist/webdav/middewares/request-logger.middleware.d.ts +7 -0
- package/dist/webdav/middewares/request-logger.middleware.js +15 -0
- package/dist/webdav/webdav-server.d.ts +25 -0
- package/dist/webdav/webdav-server.js +98 -0
- package/oclif.manifest.json +593 -0
- package/package.json +122 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WebDavServer = void 0;
|
|
7
|
+
const https_1 = __importDefault(require("https"));
|
|
8
|
+
const config_service_1 = require("../services/config.service");
|
|
9
|
+
const OPTIONS_handler_1 = require("./handlers/OPTIONS.handler");
|
|
10
|
+
const PROPFIND_handler_1 = require("./handlers/PROPFIND.handler");
|
|
11
|
+
const logger_utils_1 = require("../utils/logger.utils");
|
|
12
|
+
const body_parser_1 = __importDefault(require("body-parser"));
|
|
13
|
+
const auth_middleware_1 = require("./middewares/auth.middleware");
|
|
14
|
+
const request_logger_middleware_1 = require("./middewares/request-logger.middleware");
|
|
15
|
+
const GET_handler_1 = require("./handlers/GET.handler");
|
|
16
|
+
const HEAD_handler_1 = require("./handlers/HEAD.handler");
|
|
17
|
+
const errors_middleware_1 = require("./middewares/errors.middleware");
|
|
18
|
+
const express_async_handler_1 = __importDefault(require("express-async-handler"));
|
|
19
|
+
const sdk_manager_service_1 = require("../services/sdk-manager.service");
|
|
20
|
+
const network_facade_service_1 = require("../services/network/network-facade.service");
|
|
21
|
+
const network_utils_1 = require("../utils/network.utils");
|
|
22
|
+
const PUT_handler_1 = require("./handlers/PUT.handler");
|
|
23
|
+
class WebDavServer {
|
|
24
|
+
app;
|
|
25
|
+
configService;
|
|
26
|
+
driveFileService;
|
|
27
|
+
driveFolderService;
|
|
28
|
+
driveDatabaseManager;
|
|
29
|
+
uploadService;
|
|
30
|
+
downloadService;
|
|
31
|
+
authService;
|
|
32
|
+
cryptoService;
|
|
33
|
+
constructor(app, configService, driveFileService, driveFolderService, driveDatabaseManager, uploadService, downloadService, authService, cryptoService) {
|
|
34
|
+
this.app = app;
|
|
35
|
+
this.configService = configService;
|
|
36
|
+
this.driveFileService = driveFileService;
|
|
37
|
+
this.driveFolderService = driveFolderService;
|
|
38
|
+
this.driveDatabaseManager = driveDatabaseManager;
|
|
39
|
+
this.uploadService = uploadService;
|
|
40
|
+
this.downloadService = downloadService;
|
|
41
|
+
this.authService = authService;
|
|
42
|
+
this.cryptoService = cryptoService;
|
|
43
|
+
}
|
|
44
|
+
async getNetwork() {
|
|
45
|
+
const credentials = await this.configService.readUser();
|
|
46
|
+
if (!credentials)
|
|
47
|
+
throw new Error('Credentials not found in Config service, cannot create network');
|
|
48
|
+
const networkModule = sdk_manager_service_1.SdkManager.instance.getNetwork({
|
|
49
|
+
user: credentials.user.bridgeUser,
|
|
50
|
+
pass: credentials.user.userId,
|
|
51
|
+
});
|
|
52
|
+
return new network_facade_service_1.NetworkFacade(networkModule, this.uploadService, this.downloadService, this.cryptoService);
|
|
53
|
+
}
|
|
54
|
+
registerMiddlewares = () => {
|
|
55
|
+
this.app.use(body_parser_1.default.text({ type: ['application/xml', 'text/xml'] }));
|
|
56
|
+
this.app.use(errors_middleware_1.ErrorHandlingMiddleware);
|
|
57
|
+
this.app.use((0, request_logger_middleware_1.RequestLoggerMiddleware)({
|
|
58
|
+
enable: false,
|
|
59
|
+
}));
|
|
60
|
+
this.app.use((0, auth_middleware_1.AuthMiddleware)(config_service_1.ConfigService.instance));
|
|
61
|
+
};
|
|
62
|
+
registerHandlers = async () => {
|
|
63
|
+
this.app.head('*', (0, express_async_handler_1.default)(new HEAD_handler_1.HEADRequestHandler().handle));
|
|
64
|
+
this.app.get('*', (0, express_async_handler_1.default)(new GET_handler_1.GETRequestHandler({
|
|
65
|
+
driveFileService: this.driveFileService,
|
|
66
|
+
driveDatabaseManager: this.driveDatabaseManager,
|
|
67
|
+
uploadService: this.uploadService,
|
|
68
|
+
downloadService: this.downloadService,
|
|
69
|
+
cryptoService: this.cryptoService,
|
|
70
|
+
authService: this.authService,
|
|
71
|
+
networkFacade: await this.getNetwork(),
|
|
72
|
+
}).handle));
|
|
73
|
+
this.app.options('*', (0, express_async_handler_1.default)(new OPTIONS_handler_1.OPTIONSRequestHandler().handle));
|
|
74
|
+
this.app.propfind('*', (0, express_async_handler_1.default)(new PROPFIND_handler_1.PROPFINDRequestHandler({ debug: true }, {
|
|
75
|
+
driveFolderService: this.driveFolderService,
|
|
76
|
+
driveDatabaseManager: this.driveDatabaseManager,
|
|
77
|
+
}).handle));
|
|
78
|
+
this.app.put('*', (0, express_async_handler_1.default)(new PUT_handler_1.PUTRequestHandler({
|
|
79
|
+
driveFileService: this.driveFileService,
|
|
80
|
+
driveDatabaseManager: this.driveDatabaseManager,
|
|
81
|
+
uploadService: this.uploadService,
|
|
82
|
+
downloadService: this.downloadService,
|
|
83
|
+
cryptoService: this.cryptoService,
|
|
84
|
+
authService: this.authService,
|
|
85
|
+
networkFacade: await this.getNetwork(),
|
|
86
|
+
}).handle));
|
|
87
|
+
};
|
|
88
|
+
async start() {
|
|
89
|
+
const port = this.configService.get('WEBDAV_SERVER_PORT');
|
|
90
|
+
this.app.disable('x-powered-by');
|
|
91
|
+
this.registerMiddlewares();
|
|
92
|
+
this.registerHandlers();
|
|
93
|
+
https_1.default.createServer(network_utils_1.NetworkUtils.getWebdavSSLCerts(), this.app).listen(port, () => {
|
|
94
|
+
logger_utils_1.webdavLogger.info(`Internxt WebDav server listening at https://${config_service_1.ConfigService.WEBDAV_LOCAL_URL}:${port}`);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.WebDavServer = WebDavServer;
|
|
@@ -0,0 +1,593 @@
|
|
|
1
|
+
{
|
|
2
|
+
"commands": {
|
|
3
|
+
"config": {
|
|
4
|
+
"aliases": [],
|
|
5
|
+
"args": {},
|
|
6
|
+
"description": "Display useful information from the user logged into the Internxt CLI.",
|
|
7
|
+
"examples": [
|
|
8
|
+
"<%= config.bin %> <%= command.id %>"
|
|
9
|
+
],
|
|
10
|
+
"flags": {
|
|
11
|
+
"columns": {
|
|
12
|
+
"description": "only show provided columns (comma-separated)",
|
|
13
|
+
"exclusive": [
|
|
14
|
+
"extended"
|
|
15
|
+
],
|
|
16
|
+
"name": "columns",
|
|
17
|
+
"hasDynamicHelp": false,
|
|
18
|
+
"multiple": false,
|
|
19
|
+
"type": "option"
|
|
20
|
+
},
|
|
21
|
+
"csv": {
|
|
22
|
+
"description": "output is csv format [alias: --output=csv]",
|
|
23
|
+
"exclusive": [
|
|
24
|
+
"no-truncate"
|
|
25
|
+
],
|
|
26
|
+
"name": "csv",
|
|
27
|
+
"allowNo": false,
|
|
28
|
+
"type": "boolean"
|
|
29
|
+
},
|
|
30
|
+
"extended": {
|
|
31
|
+
"char": "x",
|
|
32
|
+
"description": "show extra columns",
|
|
33
|
+
"exclusive": [
|
|
34
|
+
"columns"
|
|
35
|
+
],
|
|
36
|
+
"name": "extended",
|
|
37
|
+
"allowNo": false,
|
|
38
|
+
"type": "boolean"
|
|
39
|
+
},
|
|
40
|
+
"filter": {
|
|
41
|
+
"description": "filter property by partial string matching, ex: name=foo",
|
|
42
|
+
"name": "filter",
|
|
43
|
+
"hasDynamicHelp": false,
|
|
44
|
+
"multiple": false,
|
|
45
|
+
"type": "option"
|
|
46
|
+
},
|
|
47
|
+
"no-header": {
|
|
48
|
+
"description": "hide table header from output",
|
|
49
|
+
"exclusive": [
|
|
50
|
+
"csv"
|
|
51
|
+
],
|
|
52
|
+
"name": "no-header",
|
|
53
|
+
"allowNo": false,
|
|
54
|
+
"type": "boolean"
|
|
55
|
+
},
|
|
56
|
+
"no-truncate": {
|
|
57
|
+
"description": "do not truncate output to fit screen",
|
|
58
|
+
"exclusive": [
|
|
59
|
+
"csv"
|
|
60
|
+
],
|
|
61
|
+
"name": "no-truncate",
|
|
62
|
+
"allowNo": false,
|
|
63
|
+
"type": "boolean"
|
|
64
|
+
},
|
|
65
|
+
"output": {
|
|
66
|
+
"description": "output in a more machine friendly format",
|
|
67
|
+
"exclusive": [
|
|
68
|
+
"no-truncate",
|
|
69
|
+
"csv"
|
|
70
|
+
],
|
|
71
|
+
"name": "output",
|
|
72
|
+
"hasDynamicHelp": false,
|
|
73
|
+
"multiple": false,
|
|
74
|
+
"options": [
|
|
75
|
+
"csv",
|
|
76
|
+
"json",
|
|
77
|
+
"yaml"
|
|
78
|
+
],
|
|
79
|
+
"type": "option"
|
|
80
|
+
},
|
|
81
|
+
"sort": {
|
|
82
|
+
"description": "property to sort by (prepend '-' for descending)",
|
|
83
|
+
"name": "sort",
|
|
84
|
+
"hasDynamicHelp": false,
|
|
85
|
+
"multiple": false,
|
|
86
|
+
"type": "option"
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"hasDynamicHelp": false,
|
|
90
|
+
"hiddenAliases": [],
|
|
91
|
+
"id": "config",
|
|
92
|
+
"pluginAlias": "@internxt/cli",
|
|
93
|
+
"pluginName": "@internxt/cli",
|
|
94
|
+
"pluginType": "core",
|
|
95
|
+
"strict": true,
|
|
96
|
+
"enableJsonFlag": false,
|
|
97
|
+
"isESM": false,
|
|
98
|
+
"relativePath": [
|
|
99
|
+
"dist",
|
|
100
|
+
"commands",
|
|
101
|
+
"config.js"
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
"download": {
|
|
105
|
+
"aliases": [],
|
|
106
|
+
"args": {},
|
|
107
|
+
"description": "Download and decrypts a file from Internxt Drive to a directory. The file name will be the same as the file name in your Drive",
|
|
108
|
+
"examples": [
|
|
109
|
+
"<%= config.bin %> <%= command.id %>"
|
|
110
|
+
],
|
|
111
|
+
"flags": {
|
|
112
|
+
"overwrite": {
|
|
113
|
+
"description": "Overwrite the file if it already exists",
|
|
114
|
+
"name": "overwrite",
|
|
115
|
+
"allowNo": false,
|
|
116
|
+
"type": "boolean"
|
|
117
|
+
},
|
|
118
|
+
"id": {
|
|
119
|
+
"description": "The id of the file to download. Use <%= config.bin %> list to view your files ids",
|
|
120
|
+
"name": "id",
|
|
121
|
+
"required": true,
|
|
122
|
+
"hasDynamicHelp": false,
|
|
123
|
+
"multiple": false,
|
|
124
|
+
"type": "option"
|
|
125
|
+
},
|
|
126
|
+
"directory": {
|
|
127
|
+
"description": "The directory to download the file to.",
|
|
128
|
+
"name": "directory",
|
|
129
|
+
"required": true,
|
|
130
|
+
"hasDynamicHelp": false,
|
|
131
|
+
"multiple": false,
|
|
132
|
+
"type": "option"
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
"hasDynamicHelp": false,
|
|
136
|
+
"hiddenAliases": [],
|
|
137
|
+
"id": "download",
|
|
138
|
+
"pluginAlias": "@internxt/cli",
|
|
139
|
+
"pluginName": "@internxt/cli",
|
|
140
|
+
"pluginType": "core",
|
|
141
|
+
"strict": true,
|
|
142
|
+
"enableJsonFlag": false,
|
|
143
|
+
"isESM": false,
|
|
144
|
+
"relativePath": [
|
|
145
|
+
"dist",
|
|
146
|
+
"commands",
|
|
147
|
+
"download.js"
|
|
148
|
+
]
|
|
149
|
+
},
|
|
150
|
+
"list": {
|
|
151
|
+
"aliases": [],
|
|
152
|
+
"args": {},
|
|
153
|
+
"description": "Lists the content of a folder id.",
|
|
154
|
+
"examples": [
|
|
155
|
+
"<%= config.bin %> <%= command.id %>"
|
|
156
|
+
],
|
|
157
|
+
"flags": {
|
|
158
|
+
"non-interactive": {
|
|
159
|
+
"char": "n",
|
|
160
|
+
"description": "Blocks the cli from being interactive. If passed, the cli will not request data through the console and will throw errors directly",
|
|
161
|
+
"env": "INXT_NONINTERACTIVE",
|
|
162
|
+
"helpGroup": "helper",
|
|
163
|
+
"name": "non-interactive",
|
|
164
|
+
"required": false,
|
|
165
|
+
"allowNo": false,
|
|
166
|
+
"type": "boolean"
|
|
167
|
+
},
|
|
168
|
+
"id": {
|
|
169
|
+
"char": "f",
|
|
170
|
+
"description": "The folder id to list. Leave empty for the root folder.",
|
|
171
|
+
"name": "id",
|
|
172
|
+
"required": false,
|
|
173
|
+
"hasDynamicHelp": false,
|
|
174
|
+
"multiple": false,
|
|
175
|
+
"type": "option"
|
|
176
|
+
},
|
|
177
|
+
"columns": {
|
|
178
|
+
"description": "only show provided columns (comma-separated)",
|
|
179
|
+
"exclusive": [
|
|
180
|
+
"extended"
|
|
181
|
+
],
|
|
182
|
+
"name": "columns",
|
|
183
|
+
"hasDynamicHelp": false,
|
|
184
|
+
"multiple": false,
|
|
185
|
+
"type": "option"
|
|
186
|
+
},
|
|
187
|
+
"csv": {
|
|
188
|
+
"description": "output is csv format [alias: --output=csv]",
|
|
189
|
+
"exclusive": [
|
|
190
|
+
"no-truncate"
|
|
191
|
+
],
|
|
192
|
+
"name": "csv",
|
|
193
|
+
"allowNo": false,
|
|
194
|
+
"type": "boolean"
|
|
195
|
+
},
|
|
196
|
+
"extended": {
|
|
197
|
+
"char": "x",
|
|
198
|
+
"description": "show extra columns",
|
|
199
|
+
"exclusive": [
|
|
200
|
+
"columns"
|
|
201
|
+
],
|
|
202
|
+
"name": "extended",
|
|
203
|
+
"allowNo": false,
|
|
204
|
+
"type": "boolean"
|
|
205
|
+
},
|
|
206
|
+
"filter": {
|
|
207
|
+
"description": "filter property by partial string matching, ex: name=foo",
|
|
208
|
+
"name": "filter",
|
|
209
|
+
"hasDynamicHelp": false,
|
|
210
|
+
"multiple": false,
|
|
211
|
+
"type": "option"
|
|
212
|
+
},
|
|
213
|
+
"no-header": {
|
|
214
|
+
"description": "hide table header from output",
|
|
215
|
+
"exclusive": [
|
|
216
|
+
"csv"
|
|
217
|
+
],
|
|
218
|
+
"name": "no-header",
|
|
219
|
+
"allowNo": false,
|
|
220
|
+
"type": "boolean"
|
|
221
|
+
},
|
|
222
|
+
"no-truncate": {
|
|
223
|
+
"description": "do not truncate output to fit screen",
|
|
224
|
+
"exclusive": [
|
|
225
|
+
"csv"
|
|
226
|
+
],
|
|
227
|
+
"name": "no-truncate",
|
|
228
|
+
"allowNo": false,
|
|
229
|
+
"type": "boolean"
|
|
230
|
+
},
|
|
231
|
+
"output": {
|
|
232
|
+
"description": "output in a more machine friendly format",
|
|
233
|
+
"exclusive": [
|
|
234
|
+
"no-truncate",
|
|
235
|
+
"csv"
|
|
236
|
+
],
|
|
237
|
+
"name": "output",
|
|
238
|
+
"hasDynamicHelp": false,
|
|
239
|
+
"multiple": false,
|
|
240
|
+
"options": [
|
|
241
|
+
"csv",
|
|
242
|
+
"json",
|
|
243
|
+
"yaml"
|
|
244
|
+
],
|
|
245
|
+
"type": "option"
|
|
246
|
+
},
|
|
247
|
+
"sort": {
|
|
248
|
+
"description": "property to sort by (prepend '-' for descending)",
|
|
249
|
+
"name": "sort",
|
|
250
|
+
"hasDynamicHelp": false,
|
|
251
|
+
"multiple": false,
|
|
252
|
+
"type": "option"
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
"hasDynamicHelp": false,
|
|
256
|
+
"hiddenAliases": [],
|
|
257
|
+
"id": "list",
|
|
258
|
+
"pluginAlias": "@internxt/cli",
|
|
259
|
+
"pluginName": "@internxt/cli",
|
|
260
|
+
"pluginType": "core",
|
|
261
|
+
"strict": true,
|
|
262
|
+
"enableJsonFlag": false,
|
|
263
|
+
"isESM": false,
|
|
264
|
+
"relativePath": [
|
|
265
|
+
"dist",
|
|
266
|
+
"commands",
|
|
267
|
+
"list.js"
|
|
268
|
+
]
|
|
269
|
+
},
|
|
270
|
+
"login": {
|
|
271
|
+
"aliases": [],
|
|
272
|
+
"args": {},
|
|
273
|
+
"description": "Logs into an Internxt account. If the account is two-factor protected, then an extra code will be required.",
|
|
274
|
+
"examples": [
|
|
275
|
+
"<%= config.bin %> <%= command.id %>"
|
|
276
|
+
],
|
|
277
|
+
"flags": {
|
|
278
|
+
"non-interactive": {
|
|
279
|
+
"char": "n",
|
|
280
|
+
"description": "Blocks the cli from being interactive. If passed, the cli will not request data through the console and will throw errors directly",
|
|
281
|
+
"env": "INXT_NONINTERACTIVE",
|
|
282
|
+
"helpGroup": "helper",
|
|
283
|
+
"name": "non-interactive",
|
|
284
|
+
"required": false,
|
|
285
|
+
"allowNo": false,
|
|
286
|
+
"type": "boolean"
|
|
287
|
+
},
|
|
288
|
+
"email": {
|
|
289
|
+
"aliases": [
|
|
290
|
+
"mail"
|
|
291
|
+
],
|
|
292
|
+
"char": "e",
|
|
293
|
+
"description": "The email to log in",
|
|
294
|
+
"env": "INXT_EMAIL",
|
|
295
|
+
"name": "email",
|
|
296
|
+
"required": false,
|
|
297
|
+
"hasDynamicHelp": false,
|
|
298
|
+
"multiple": false,
|
|
299
|
+
"type": "option"
|
|
300
|
+
},
|
|
301
|
+
"password": {
|
|
302
|
+
"aliases": [
|
|
303
|
+
"pass"
|
|
304
|
+
],
|
|
305
|
+
"char": "p",
|
|
306
|
+
"description": "The plain password to log in",
|
|
307
|
+
"env": "INXT_PASSWORD",
|
|
308
|
+
"name": "password",
|
|
309
|
+
"required": false,
|
|
310
|
+
"hasDynamicHelp": false,
|
|
311
|
+
"multiple": false,
|
|
312
|
+
"type": "option"
|
|
313
|
+
},
|
|
314
|
+
"twofactor": {
|
|
315
|
+
"aliases": [
|
|
316
|
+
"two",
|
|
317
|
+
"two-factor"
|
|
318
|
+
],
|
|
319
|
+
"char": "w",
|
|
320
|
+
"description": "The two factor auth code (only needed if the account is two-factor protected)",
|
|
321
|
+
"env": "INXT_TWOFACTORCODE",
|
|
322
|
+
"name": "twofactor",
|
|
323
|
+
"required": false,
|
|
324
|
+
"hasDynamicHelp": false,
|
|
325
|
+
"helpValue": "123456",
|
|
326
|
+
"multiple": false,
|
|
327
|
+
"type": "option"
|
|
328
|
+
}
|
|
329
|
+
},
|
|
330
|
+
"hasDynamicHelp": false,
|
|
331
|
+
"hiddenAliases": [],
|
|
332
|
+
"id": "login",
|
|
333
|
+
"pluginAlias": "@internxt/cli",
|
|
334
|
+
"pluginName": "@internxt/cli",
|
|
335
|
+
"pluginType": "core",
|
|
336
|
+
"strict": true,
|
|
337
|
+
"enableJsonFlag": false,
|
|
338
|
+
"MAX_ATTEMPTS": 3,
|
|
339
|
+
"isESM": false,
|
|
340
|
+
"relativePath": [
|
|
341
|
+
"dist",
|
|
342
|
+
"commands",
|
|
343
|
+
"login.js"
|
|
344
|
+
]
|
|
345
|
+
},
|
|
346
|
+
"logout": {
|
|
347
|
+
"aliases": [],
|
|
348
|
+
"args": {},
|
|
349
|
+
"description": "Logs out the current internxt user that is logged into the Internxt CLI.",
|
|
350
|
+
"examples": [
|
|
351
|
+
"<%= config.bin %> <%= command.id %>"
|
|
352
|
+
],
|
|
353
|
+
"flags": {},
|
|
354
|
+
"hasDynamicHelp": false,
|
|
355
|
+
"hiddenAliases": [],
|
|
356
|
+
"id": "logout",
|
|
357
|
+
"pluginAlias": "@internxt/cli",
|
|
358
|
+
"pluginName": "@internxt/cli",
|
|
359
|
+
"pluginType": "core",
|
|
360
|
+
"strict": true,
|
|
361
|
+
"enableJsonFlag": false,
|
|
362
|
+
"isESM": false,
|
|
363
|
+
"relativePath": [
|
|
364
|
+
"dist",
|
|
365
|
+
"commands",
|
|
366
|
+
"logout.js"
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
"logs": {
|
|
370
|
+
"aliases": [],
|
|
371
|
+
"args": {},
|
|
372
|
+
"description": "Displays the Internxt CLI logs directory path",
|
|
373
|
+
"examples": [
|
|
374
|
+
"<%= config.bin %> <%= command.id %>"
|
|
375
|
+
],
|
|
376
|
+
"flags": {},
|
|
377
|
+
"hasDynamicHelp": false,
|
|
378
|
+
"hiddenAliases": [],
|
|
379
|
+
"id": "logs",
|
|
380
|
+
"pluginAlias": "@internxt/cli",
|
|
381
|
+
"pluginName": "@internxt/cli",
|
|
382
|
+
"pluginType": "core",
|
|
383
|
+
"strict": true,
|
|
384
|
+
"enableJsonFlag": false,
|
|
385
|
+
"isESM": false,
|
|
386
|
+
"relativePath": [
|
|
387
|
+
"dist",
|
|
388
|
+
"commands",
|
|
389
|
+
"logs.js"
|
|
390
|
+
]
|
|
391
|
+
},
|
|
392
|
+
"move": {
|
|
393
|
+
"aliases": [],
|
|
394
|
+
"args": {},
|
|
395
|
+
"description": "Move a folder/file into a destination folder.",
|
|
396
|
+
"examples": [
|
|
397
|
+
"<%= config.bin %> <%= command.id %>"
|
|
398
|
+
],
|
|
399
|
+
"flags": {
|
|
400
|
+
"non-interactive": {
|
|
401
|
+
"char": "n",
|
|
402
|
+
"description": "Blocks the cli from being interactive. If passed, the cli will not request data through the console and will throw errors directly",
|
|
403
|
+
"env": "INXT_NONINTERACTIVE",
|
|
404
|
+
"helpGroup": "helper",
|
|
405
|
+
"name": "non-interactive",
|
|
406
|
+
"required": false,
|
|
407
|
+
"allowNo": false,
|
|
408
|
+
"type": "boolean"
|
|
409
|
+
},
|
|
410
|
+
"id": {
|
|
411
|
+
"char": "i",
|
|
412
|
+
"description": "The item id to be moved (it can be a file id or a folder id).",
|
|
413
|
+
"name": "id",
|
|
414
|
+
"required": false,
|
|
415
|
+
"hasDynamicHelp": false,
|
|
416
|
+
"multiple": false,
|
|
417
|
+
"type": "option"
|
|
418
|
+
},
|
|
419
|
+
"destination": {
|
|
420
|
+
"char": "d",
|
|
421
|
+
"description": "The destination folder id where the item is going to be moved.",
|
|
422
|
+
"name": "destination",
|
|
423
|
+
"required": false,
|
|
424
|
+
"hasDynamicHelp": false,
|
|
425
|
+
"multiple": false,
|
|
426
|
+
"type": "option"
|
|
427
|
+
}
|
|
428
|
+
},
|
|
429
|
+
"hasDynamicHelp": false,
|
|
430
|
+
"hiddenAliases": [],
|
|
431
|
+
"id": "move",
|
|
432
|
+
"pluginAlias": "@internxt/cli",
|
|
433
|
+
"pluginName": "@internxt/cli",
|
|
434
|
+
"pluginType": "core",
|
|
435
|
+
"strict": true,
|
|
436
|
+
"enableJsonFlag": false,
|
|
437
|
+
"MAX_ATTEMPTS": 3,
|
|
438
|
+
"isESM": false,
|
|
439
|
+
"relativePath": [
|
|
440
|
+
"dist",
|
|
441
|
+
"commands",
|
|
442
|
+
"move.js"
|
|
443
|
+
]
|
|
444
|
+
},
|
|
445
|
+
"trash": {
|
|
446
|
+
"aliases": [],
|
|
447
|
+
"args": {},
|
|
448
|
+
"description": "Moves a given folder/file to the trash.",
|
|
449
|
+
"examples": [
|
|
450
|
+
"<%= config.bin %> <%= command.id %>"
|
|
451
|
+
],
|
|
452
|
+
"flags": {
|
|
453
|
+
"non-interactive": {
|
|
454
|
+
"char": "n",
|
|
455
|
+
"description": "Blocks the cli from being interactive. If passed, the cli will not request data through the console and will throw errors directly",
|
|
456
|
+
"env": "INXT_NONINTERACTIVE",
|
|
457
|
+
"helpGroup": "helper",
|
|
458
|
+
"name": "non-interactive",
|
|
459
|
+
"required": false,
|
|
460
|
+
"allowNo": false,
|
|
461
|
+
"type": "boolean"
|
|
462
|
+
},
|
|
463
|
+
"id": {
|
|
464
|
+
"char": "i",
|
|
465
|
+
"description": "The item id to be trashed (it can be a file id or a folder id).",
|
|
466
|
+
"name": "id",
|
|
467
|
+
"required": false,
|
|
468
|
+
"hasDynamicHelp": false,
|
|
469
|
+
"multiple": false,
|
|
470
|
+
"type": "option"
|
|
471
|
+
}
|
|
472
|
+
},
|
|
473
|
+
"hasDynamicHelp": false,
|
|
474
|
+
"hiddenAliases": [],
|
|
475
|
+
"id": "trash",
|
|
476
|
+
"pluginAlias": "@internxt/cli",
|
|
477
|
+
"pluginName": "@internxt/cli",
|
|
478
|
+
"pluginType": "core",
|
|
479
|
+
"strict": true,
|
|
480
|
+
"enableJsonFlag": false,
|
|
481
|
+
"MAX_ATTEMPTS": 3,
|
|
482
|
+
"isESM": false,
|
|
483
|
+
"relativePath": [
|
|
484
|
+
"dist",
|
|
485
|
+
"commands",
|
|
486
|
+
"trash.js"
|
|
487
|
+
]
|
|
488
|
+
},
|
|
489
|
+
"upload": {
|
|
490
|
+
"aliases": [],
|
|
491
|
+
"args": {},
|
|
492
|
+
"description": "Upload a file to Internxt Drive",
|
|
493
|
+
"examples": [
|
|
494
|
+
"<%= config.bin %> <%= command.id %>"
|
|
495
|
+
],
|
|
496
|
+
"flags": {
|
|
497
|
+
"json": {
|
|
498
|
+
"description": "Format output as json.",
|
|
499
|
+
"helpGroup": "GLOBAL",
|
|
500
|
+
"name": "json",
|
|
501
|
+
"allowNo": false,
|
|
502
|
+
"type": "boolean"
|
|
503
|
+
},
|
|
504
|
+
"file": {
|
|
505
|
+
"description": "The path to read the file in your system",
|
|
506
|
+
"name": "file",
|
|
507
|
+
"required": true,
|
|
508
|
+
"hasDynamicHelp": false,
|
|
509
|
+
"multiple": false,
|
|
510
|
+
"type": "option"
|
|
511
|
+
},
|
|
512
|
+
"id": {
|
|
513
|
+
"description": "The folder id to upload the file to",
|
|
514
|
+
"name": "id",
|
|
515
|
+
"required": false,
|
|
516
|
+
"hasDynamicHelp": false,
|
|
517
|
+
"multiple": false,
|
|
518
|
+
"type": "option"
|
|
519
|
+
}
|
|
520
|
+
},
|
|
521
|
+
"hasDynamicHelp": false,
|
|
522
|
+
"hiddenAliases": [],
|
|
523
|
+
"id": "upload",
|
|
524
|
+
"pluginAlias": "@internxt/cli",
|
|
525
|
+
"pluginName": "@internxt/cli",
|
|
526
|
+
"pluginType": "core",
|
|
527
|
+
"strict": true,
|
|
528
|
+
"enableJsonFlag": true,
|
|
529
|
+
"isESM": false,
|
|
530
|
+
"relativePath": [
|
|
531
|
+
"dist",
|
|
532
|
+
"commands",
|
|
533
|
+
"upload.js"
|
|
534
|
+
]
|
|
535
|
+
},
|
|
536
|
+
"webdav": {
|
|
537
|
+
"aliases": [],
|
|
538
|
+
"args": {
|
|
539
|
+
"action": {
|
|
540
|
+
"name": "action",
|
|
541
|
+
"options": [
|
|
542
|
+
"enable",
|
|
543
|
+
"disable"
|
|
544
|
+
],
|
|
545
|
+
"required": true
|
|
546
|
+
}
|
|
547
|
+
},
|
|
548
|
+
"description": "Enable or disable the Internxt CLI WebDav server",
|
|
549
|
+
"examples": [
|
|
550
|
+
"<%= config.bin %> <%= command.id %>"
|
|
551
|
+
],
|
|
552
|
+
"flags": {},
|
|
553
|
+
"hasDynamicHelp": false,
|
|
554
|
+
"hiddenAliases": [],
|
|
555
|
+
"id": "webdav",
|
|
556
|
+
"pluginAlias": "@internxt/cli",
|
|
557
|
+
"pluginName": "@internxt/cli",
|
|
558
|
+
"pluginType": "core",
|
|
559
|
+
"strict": true,
|
|
560
|
+
"enableJsonFlag": false,
|
|
561
|
+
"isESM": false,
|
|
562
|
+
"relativePath": [
|
|
563
|
+
"dist",
|
|
564
|
+
"commands",
|
|
565
|
+
"webdav.js"
|
|
566
|
+
]
|
|
567
|
+
},
|
|
568
|
+
"whoami": {
|
|
569
|
+
"aliases": [],
|
|
570
|
+
"args": {},
|
|
571
|
+
"description": "Display the current user logged into the Internxt CLI.",
|
|
572
|
+
"examples": [
|
|
573
|
+
"<%= config.bin %> <%= command.id %>"
|
|
574
|
+
],
|
|
575
|
+
"flags": {},
|
|
576
|
+
"hasDynamicHelp": false,
|
|
577
|
+
"hiddenAliases": [],
|
|
578
|
+
"id": "whoami",
|
|
579
|
+
"pluginAlias": "@internxt/cli",
|
|
580
|
+
"pluginName": "@internxt/cli",
|
|
581
|
+
"pluginType": "core",
|
|
582
|
+
"strict": true,
|
|
583
|
+
"enableJsonFlag": false,
|
|
584
|
+
"isESM": false,
|
|
585
|
+
"relativePath": [
|
|
586
|
+
"dist",
|
|
587
|
+
"commands",
|
|
588
|
+
"whoami.js"
|
|
589
|
+
]
|
|
590
|
+
}
|
|
591
|
+
},
|
|
592
|
+
"version": "0.1.4"
|
|
593
|
+
}
|