@zeppos/zeus-cli 1.6.7-beta2 → 1.6.7-beta3
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/package.json +23 -21
- package/private-modules/zeppos-app-utils/dist/config/project.js +2 -2
- package/private-modules/zeppos-app-utils/dist/modules/fetchDevices.js +10 -29
- package/private-modules/zeppos-app-utils/dist/modules/login.js +1 -1
- package/private-modules/zeppos-app-utils/dist/modules/open/index.js +355 -0
- package/private-modules/zeppos-app-utils/dist/modules/open/xdg-open +1069 -0
- package/private-modules/zeppos-app-utils/package.json +18 -16
- package/utils/pre-check.js +4 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeppos/zeus-cli",
|
|
3
|
-
"version": "1.6.7-
|
|
3
|
+
"version": "1.6.7-beta3",
|
|
4
4
|
"description": "zeus mini-program tools",
|
|
5
5
|
"main": "index.ts",
|
|
6
6
|
"author": "zepp",
|
|
@@ -16,48 +16,50 @@
|
|
|
16
16
|
"clean": "rm -rf node_modules && rm -rf dist"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"dayjs": "^1.11.
|
|
19
|
+
"dayjs": "^1.11.13",
|
|
20
20
|
"package-json": "^7.0.0",
|
|
21
21
|
"qrcode-terminal": "^0.12.0",
|
|
22
22
|
"vorpal": "^1.12.0",
|
|
23
|
-
"yargs": "^17.
|
|
24
|
-
"@zeppos/zpm": "^3.1.13-
|
|
25
|
-
"axios": "^
|
|
23
|
+
"yargs": "^17.7.2",
|
|
24
|
+
"@zeppos/zpm": "^3.1.13-beta2",
|
|
25
|
+
"axios": "^1.7.7",
|
|
26
26
|
"chalk": "^4.1.2",
|
|
27
|
-
"chokidar": "^3.
|
|
28
|
-
"
|
|
27
|
+
"chokidar": "^3.6.0",
|
|
28
|
+
"define-lazy-prop": "^2.0.0",
|
|
29
|
+
"dotenv": "^16.4.5",
|
|
29
30
|
"findup-sync": "^5.0.0",
|
|
30
31
|
"form-data": "^4.0.1",
|
|
31
32
|
"fs-extra": "^10.1.0",
|
|
32
33
|
"get-port": "5.1.1",
|
|
33
|
-
"inquirer": "^8.
|
|
34
|
+
"inquirer": "^8.2.6",
|
|
35
|
+
"is-docker": "^2.1.1",
|
|
36
|
+
"is-wsl": "^2.2.0",
|
|
34
37
|
"lodash": "^4.17.21",
|
|
35
|
-
"open": "^8.4.0",
|
|
36
38
|
"parse-gitignore": "^2.0.0",
|
|
37
|
-
"qs": "^6.
|
|
39
|
+
"qs": "^6.13.1",
|
|
38
40
|
"rd": "^2.0.1",
|
|
39
41
|
"shelljs": "^0.8.5",
|
|
40
|
-
"socket.io-client": "^4.
|
|
42
|
+
"socket.io-client": "^4.8.1",
|
|
41
43
|
"stoppable": "^1.1.0",
|
|
42
44
|
"tweetnacl": "^1.0.3",
|
|
43
45
|
"tweetnacl-util": "^0.15.1",
|
|
44
46
|
"update-notifier": "5.1.0",
|
|
45
47
|
"uuid": "^8.3.2",
|
|
46
|
-
"ws": "^8.
|
|
47
|
-
"yargs-parser": "^20.2.
|
|
48
|
-
"yeoman-environment": "^3.
|
|
48
|
+
"ws": "^8.18.0",
|
|
49
|
+
"yargs-parser": "^20.2.9",
|
|
50
|
+
"yeoman-environment": "^3.19.3",
|
|
49
51
|
"module-alias": "^2.2.2"
|
|
50
52
|
},
|
|
51
53
|
"devDependencies": {
|
|
52
|
-
"@types/qrcode-terminal": "^0.12.
|
|
53
|
-
"@types/yargs": "^17.0.
|
|
54
|
-
"@types/findup-sync": "^4.0.
|
|
54
|
+
"@types/qrcode-terminal": "^0.12.2",
|
|
55
|
+
"@types/yargs": "^17.0.33",
|
|
56
|
+
"@types/findup-sync": "^4.0.5",
|
|
55
57
|
"@types/fs-extra": "^9.0.13",
|
|
56
|
-
"@types/parse-gitignore": "^1.0.
|
|
57
|
-
"@types/stoppable": "^1.1.
|
|
58
|
+
"@types/parse-gitignore": "^1.0.2",
|
|
59
|
+
"@types/stoppable": "^1.1.3",
|
|
58
60
|
"@types/update-notifier": "5.0.0",
|
|
59
|
-
"@types/yargs-parser": "^21.0.
|
|
60
|
-
"@types/yeoman-environment": "^2.10.
|
|
61
|
+
"@types/yargs-parser": "^21.0.3",
|
|
62
|
+
"@types/yeoman-environment": "^2.10.11",
|
|
61
63
|
"rimraf": "^3.0.2"
|
|
62
64
|
},
|
|
63
65
|
"_moduleAliases": {
|
|
@@ -34,8 +34,8 @@ var getLoginURL = {
|
|
|
34
34
|
test: 'https://user-testing.zepp.com/universalLogin/index.html#/login'
|
|
35
35
|
};
|
|
36
36
|
var getAnalyticsHost = {
|
|
37
|
-
production: 'https://api-analytics.
|
|
38
|
-
test: 'https://api-analytics-test.
|
|
37
|
+
production: 'https://api-analytics.zepp.com',
|
|
38
|
+
test: 'https://api-analytics-test.zepp.com'
|
|
39
39
|
};
|
|
40
40
|
exports.zeppFontIcon = [
|
|
41
41
|
'',
|
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -64,14 +41,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
64
41
|
exports.__esModule = true;
|
|
65
42
|
exports.fetchDevices = exports.DeviceScreenType = void 0;
|
|
66
43
|
var axios_1 = __importDefault(require("axios"));
|
|
67
|
-
var
|
|
68
|
-
var
|
|
69
|
-
var
|
|
44
|
+
var os_1 = __importDefault(require("os"));
|
|
45
|
+
var path_1 = __importDefault(require("path"));
|
|
46
|
+
var fs_1 = __importDefault(require("fs"));
|
|
70
47
|
var fs_extra_1 = __importDefault(require("fs-extra"));
|
|
71
48
|
var lodash_1 = require("lodash");
|
|
72
49
|
var config_1 = require("../config");
|
|
50
|
+
var logger_1 = require("../logger");
|
|
51
|
+
var chalk_1 = __importDefault(require("chalk"));
|
|
73
52
|
var accountEnv = (0, config_1.getLocalConfig)().account_env;
|
|
74
|
-
var
|
|
53
|
+
var dayMS = 24 * 60 * 60 * 1000;
|
|
54
|
+
var LOCAL_CACHE_DEVICE_PATH = path_1["default"].resolve(os_1["default"].homedir(), ".zepp/.zeus_devices");
|
|
75
55
|
var serverPath = 'https://upload-cdn.zepp.com/zeppos/devkit/zeus/devices.json';
|
|
76
56
|
var serverPathBeta = 'https://upload-cdn.zepp.com/zeppos/devkit/zeus/devices.beta1.json';
|
|
77
57
|
var DeviceScreenType;
|
|
@@ -108,7 +88,7 @@ var fetchDevices = function () { return __awaiter(void 0, void 0, void 0, functi
|
|
|
108
88
|
switch (_a.label) {
|
|
109
89
|
case 0:
|
|
110
90
|
localContent = {};
|
|
111
|
-
if (
|
|
91
|
+
if (fs_1["default"].existsSync(LOCAL_CACHE_DEVICE_PATH)) {
|
|
112
92
|
try {
|
|
113
93
|
localContent = fs_extra_1["default"].readJsonSync(LOCAL_CACHE_DEVICE_PATH);
|
|
114
94
|
}
|
|
@@ -116,6 +96,7 @@ var fetchDevices = function () { return __awaiter(void 0, void 0, void 0, functi
|
|
|
116
96
|
}
|
|
117
97
|
now = Date.now().valueOf();
|
|
118
98
|
if (!!((0, lodash_1.get)(localContent, 'expiredTime') > now)) return [3, 3];
|
|
99
|
+
logger_1.logger.log(chalk_1["default"].hex('#DB8C41')('Updating devices, waiting ...'));
|
|
119
100
|
return [4, fetchDevicesData(serverPath)];
|
|
120
101
|
case 1:
|
|
121
102
|
prodDevices = _a.sent();
|
|
@@ -126,7 +107,7 @@ var fetchDevices = function () { return __awaiter(void 0, void 0, void 0, functi
|
|
|
126
107
|
fs_extra_1["default"].writeJsonSync(LOCAL_CACHE_DEVICE_PATH, {
|
|
127
108
|
devices: prodDevices,
|
|
128
109
|
devices_beta: betaDevices,
|
|
129
|
-
expiredTime: now +
|
|
110
|
+
expiredTime: now + 3 * dayMS
|
|
130
111
|
});
|
|
131
112
|
}
|
|
132
113
|
else {
|
|
@@ -40,7 +40,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
40
40
|
};
|
|
41
41
|
exports.__esModule = true;
|
|
42
42
|
exports.logout = exports.login = void 0;
|
|
43
|
-
var open_1 = __importDefault(require("open"));
|
|
43
|
+
var open_1 = __importDefault(require("./open"));
|
|
44
44
|
var http_1 = __importDefault(require("http"));
|
|
45
45
|
var url_1 = __importDefault(require("url"));
|
|
46
46
|
var qs_1 = __importDefault(require("qs"));
|
|
@@ -0,0 +1,355 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
+
if (ar || !(i in from)) {
|
|
52
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
+
ar[i] = from[i];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
+
};
|
|
58
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
59
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
60
|
+
};
|
|
61
|
+
exports.__esModule = true;
|
|
62
|
+
var path_1 = __importDefault(require("path"));
|
|
63
|
+
var child_process_1 = __importDefault(require("child_process"));
|
|
64
|
+
var fs_1 = require("fs");
|
|
65
|
+
var is_wsl_1 = __importDefault(require("is-wsl"));
|
|
66
|
+
var is_docker_1 = __importDefault(require("is-docker"));
|
|
67
|
+
var define_lazy_prop_1 = __importDefault(require("define-lazy-prop"));
|
|
68
|
+
var localXdgOpenPath = path_1["default"].join(__dirname, 'xdg-open');
|
|
69
|
+
var platform = process.platform, arch = process.arch;
|
|
70
|
+
var hasContainerEnv = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
71
|
+
var _a;
|
|
72
|
+
return __generator(this, function (_b) {
|
|
73
|
+
switch (_b.label) {
|
|
74
|
+
case 0:
|
|
75
|
+
_b.trys.push([0, 2, , 3]);
|
|
76
|
+
return [4, fs_1.promises.stat('/run/.containerenv')];
|
|
77
|
+
case 1:
|
|
78
|
+
_b.sent();
|
|
79
|
+
return [2, true];
|
|
80
|
+
case 2:
|
|
81
|
+
_a = _b.sent();
|
|
82
|
+
return [2, false];
|
|
83
|
+
case 3: return [2];
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}); };
|
|
87
|
+
var cachedResult;
|
|
88
|
+
function isInsideContainer() {
|
|
89
|
+
if (cachedResult === undefined) {
|
|
90
|
+
cachedResult = hasContainerEnv() || (0, is_docker_1["default"])();
|
|
91
|
+
}
|
|
92
|
+
return cachedResult;
|
|
93
|
+
}
|
|
94
|
+
var getWslDrivesMountPoint = (function () {
|
|
95
|
+
var defaultMountPoint = '/mnt/';
|
|
96
|
+
var mountPoint;
|
|
97
|
+
return function () {
|
|
98
|
+
var _a;
|
|
99
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
100
|
+
var configFilePath, isConfigFileExists, _b, configContent, configMountPoint;
|
|
101
|
+
return __generator(this, function (_c) {
|
|
102
|
+
switch (_c.label) {
|
|
103
|
+
case 0:
|
|
104
|
+
if (mountPoint) {
|
|
105
|
+
return [2, mountPoint];
|
|
106
|
+
}
|
|
107
|
+
configFilePath = '/etc/wsl.conf';
|
|
108
|
+
isConfigFileExists = false;
|
|
109
|
+
_c.label = 1;
|
|
110
|
+
case 1:
|
|
111
|
+
_c.trys.push([1, 3, , 4]);
|
|
112
|
+
return [4, fs_1.promises.access(configFilePath, fs_1.constants.F_OK)];
|
|
113
|
+
case 2:
|
|
114
|
+
_c.sent();
|
|
115
|
+
isConfigFileExists = true;
|
|
116
|
+
return [3, 4];
|
|
117
|
+
case 3:
|
|
118
|
+
_b = _c.sent();
|
|
119
|
+
return [3, 4];
|
|
120
|
+
case 4:
|
|
121
|
+
if (!isConfigFileExists) {
|
|
122
|
+
return [2, defaultMountPoint];
|
|
123
|
+
}
|
|
124
|
+
return [4, fs_1.promises.readFile(configFilePath, { encoding: 'utf8' })];
|
|
125
|
+
case 5:
|
|
126
|
+
configContent = _c.sent();
|
|
127
|
+
configMountPoint = /(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(configContent);
|
|
128
|
+
if (!configMountPoint) {
|
|
129
|
+
return [2, defaultMountPoint];
|
|
130
|
+
}
|
|
131
|
+
mountPoint = (_a = configMountPoint.groups) === null || _a === void 0 ? void 0 : _a.mountPoint.trim();
|
|
132
|
+
mountPoint = (mountPoint === null || mountPoint === void 0 ? void 0 : mountPoint.endsWith('/')) ? mountPoint : "".concat(mountPoint, "/");
|
|
133
|
+
return [2, mountPoint];
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
};
|
|
138
|
+
})();
|
|
139
|
+
var pTryEach = function (array, mapper) { return __awaiter(void 0, void 0, void 0, function () {
|
|
140
|
+
var latestError, _i, array_1, item, error_1;
|
|
141
|
+
return __generator(this, function (_a) {
|
|
142
|
+
switch (_a.label) {
|
|
143
|
+
case 0:
|
|
144
|
+
_i = 0, array_1 = array;
|
|
145
|
+
_a.label = 1;
|
|
146
|
+
case 1:
|
|
147
|
+
if (!(_i < array_1.length)) return [3, 6];
|
|
148
|
+
item = array_1[_i];
|
|
149
|
+
_a.label = 2;
|
|
150
|
+
case 2:
|
|
151
|
+
_a.trys.push([2, 4, , 5]);
|
|
152
|
+
return [4, mapper(item)];
|
|
153
|
+
case 3: return [2, _a.sent()];
|
|
154
|
+
case 4:
|
|
155
|
+
error_1 = _a.sent();
|
|
156
|
+
latestError = error_1;
|
|
157
|
+
return [3, 5];
|
|
158
|
+
case 5:
|
|
159
|
+
_i++;
|
|
160
|
+
return [3, 1];
|
|
161
|
+
case 6: throw latestError;
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
}); };
|
|
165
|
+
var baseOpen = function (options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
166
|
+
var _a, app, _b, appArguments, command, cliArguments, childProcessOptions, mountPoint, encodedArguments, isBundled, exeLocalXdgOpen, _c, useSystemXdgOpen, subprocess;
|
|
167
|
+
return __generator(this, function (_d) {
|
|
168
|
+
switch (_d.label) {
|
|
169
|
+
case 0:
|
|
170
|
+
options = __assign({ wait: false, background: false, newInstance: false, allowNonzeroExitCode: false }, options);
|
|
171
|
+
if (Array.isArray(options.app)) {
|
|
172
|
+
return [2, pTryEach(options.app, function (singleApp) { return baseOpen(__assign(__assign({}, options), { app: singleApp })); })];
|
|
173
|
+
}
|
|
174
|
+
_a = options.app || {}, app = _a.name, _b = _a.arguments, appArguments = _b === void 0 ? [] : _b;
|
|
175
|
+
appArguments = __spreadArray([], appArguments, true);
|
|
176
|
+
if (Array.isArray(app)) {
|
|
177
|
+
return [2, pTryEach(app, function (appName) { return baseOpen(__assign(__assign({}, options), { app: {
|
|
178
|
+
name: appName,
|
|
179
|
+
arguments: appArguments
|
|
180
|
+
} })); })];
|
|
181
|
+
}
|
|
182
|
+
cliArguments = [];
|
|
183
|
+
childProcessOptions = {};
|
|
184
|
+
if (!(platform === 'darwin')) return [3, 1];
|
|
185
|
+
command = 'open';
|
|
186
|
+
if (options.wait) {
|
|
187
|
+
cliArguments.push('--wait-apps');
|
|
188
|
+
}
|
|
189
|
+
if (options.background) {
|
|
190
|
+
cliArguments.push('--background');
|
|
191
|
+
}
|
|
192
|
+
if (options.newInstance) {
|
|
193
|
+
cliArguments.push('--new');
|
|
194
|
+
}
|
|
195
|
+
if (app) {
|
|
196
|
+
cliArguments.push('-a', app);
|
|
197
|
+
}
|
|
198
|
+
return [3, 10];
|
|
199
|
+
case 1:
|
|
200
|
+
if (!(platform === 'win32' || (is_wsl_1["default"] && !isInsideContainer() && !app))) return [3, 3];
|
|
201
|
+
return [4, getWslDrivesMountPoint()];
|
|
202
|
+
case 2:
|
|
203
|
+
mountPoint = _d.sent();
|
|
204
|
+
command = is_wsl_1["default"] ?
|
|
205
|
+
"".concat(mountPoint, "c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe") :
|
|
206
|
+
"".concat(process.env.SYSTEMROOT, "\\System32\\WindowsPowerShell\\v1.0\\powershell");
|
|
207
|
+
cliArguments.push('-NoProfile', '-NonInteractive', '–ExecutionPolicy', 'Bypass', '-EncodedCommand');
|
|
208
|
+
if (!is_wsl_1["default"]) {
|
|
209
|
+
childProcessOptions.windowsVerbatimArguments = true;
|
|
210
|
+
}
|
|
211
|
+
encodedArguments = ['Start'];
|
|
212
|
+
if (options.wait) {
|
|
213
|
+
encodedArguments.push('-Wait');
|
|
214
|
+
}
|
|
215
|
+
if (app) {
|
|
216
|
+
encodedArguments.push("\"`\"".concat(app, "`\"\""), '-ArgumentList');
|
|
217
|
+
if (options.target) {
|
|
218
|
+
appArguments.unshift(options.target);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
else if (options.target) {
|
|
222
|
+
encodedArguments.push("\"".concat(options.target, "\""));
|
|
223
|
+
}
|
|
224
|
+
if (appArguments.length > 0) {
|
|
225
|
+
appArguments = appArguments.map(function (arg) { return "\"`\"".concat(arg, "`\"\""); });
|
|
226
|
+
encodedArguments.push(appArguments.join(','));
|
|
227
|
+
}
|
|
228
|
+
options.target = Buffer.from(encodedArguments.join(' '), 'utf16le').toString('base64');
|
|
229
|
+
return [3, 10];
|
|
230
|
+
case 3:
|
|
231
|
+
if (!app) return [3, 4];
|
|
232
|
+
command = app;
|
|
233
|
+
return [3, 9];
|
|
234
|
+
case 4:
|
|
235
|
+
isBundled = !__dirname || __dirname === '/';
|
|
236
|
+
exeLocalXdgOpen = false;
|
|
237
|
+
_d.label = 5;
|
|
238
|
+
case 5:
|
|
239
|
+
_d.trys.push([5, 7, , 8]);
|
|
240
|
+
return [4, fs_1.promises.access(localXdgOpenPath, fs_1.constants.X_OK)];
|
|
241
|
+
case 6:
|
|
242
|
+
_d.sent();
|
|
243
|
+
exeLocalXdgOpen = true;
|
|
244
|
+
return [3, 8];
|
|
245
|
+
case 7:
|
|
246
|
+
_c = _d.sent();
|
|
247
|
+
return [3, 8];
|
|
248
|
+
case 8:
|
|
249
|
+
useSystemXdgOpen = process.versions.electron ||
|
|
250
|
+
platform === 'android' || isBundled || !exeLocalXdgOpen;
|
|
251
|
+
command = useSystemXdgOpen ? 'xdg-open' : localXdgOpenPath;
|
|
252
|
+
_d.label = 9;
|
|
253
|
+
case 9:
|
|
254
|
+
if (appArguments.length > 0) {
|
|
255
|
+
cliArguments.push.apply(cliArguments, appArguments);
|
|
256
|
+
}
|
|
257
|
+
if (!options.wait) {
|
|
258
|
+
childProcessOptions.stdio = 'ignore';
|
|
259
|
+
childProcessOptions.detached = true;
|
|
260
|
+
}
|
|
261
|
+
_d.label = 10;
|
|
262
|
+
case 10:
|
|
263
|
+
if (options.target) {
|
|
264
|
+
cliArguments.push(options.target);
|
|
265
|
+
}
|
|
266
|
+
if (platform === 'darwin' && appArguments.length > 0) {
|
|
267
|
+
cliArguments.push.apply(cliArguments, __spreadArray(['--args'], appArguments, false));
|
|
268
|
+
}
|
|
269
|
+
subprocess = child_process_1["default"].spawn(command, cliArguments, childProcessOptions);
|
|
270
|
+
if (options.wait) {
|
|
271
|
+
return [2, new Promise(function (resolve, reject) {
|
|
272
|
+
subprocess.once('error', reject);
|
|
273
|
+
subprocess.once('close', function (exitCode) {
|
|
274
|
+
if (!options.allowNonzeroExitCode && exitCode > 0) {
|
|
275
|
+
reject(new Error("Exited with code ".concat(exitCode)));
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
resolve(subprocess);
|
|
279
|
+
});
|
|
280
|
+
})];
|
|
281
|
+
}
|
|
282
|
+
subprocess.unref();
|
|
283
|
+
return [2, subprocess];
|
|
284
|
+
}
|
|
285
|
+
});
|
|
286
|
+
}); };
|
|
287
|
+
var open = function (target, options) {
|
|
288
|
+
if (options === void 0) { options = {}; }
|
|
289
|
+
if (typeof target !== 'string') {
|
|
290
|
+
throw new TypeError('Expected a `target`');
|
|
291
|
+
}
|
|
292
|
+
return baseOpen(__assign(__assign({}, options), { target: target }));
|
|
293
|
+
};
|
|
294
|
+
var openApp = function (name, options) {
|
|
295
|
+
if (typeof name !== 'string') {
|
|
296
|
+
throw new TypeError('Expected a `name`');
|
|
297
|
+
}
|
|
298
|
+
var _a = (options || {}).arguments, appArguments = _a === void 0 ? [] : _a;
|
|
299
|
+
if (appArguments !== undefined && appArguments !== null && !Array.isArray(appArguments)) {
|
|
300
|
+
throw new TypeError('Expected `appArguments` as Array type');
|
|
301
|
+
}
|
|
302
|
+
return baseOpen(__assign(__assign({}, options), { app: {
|
|
303
|
+
name: name,
|
|
304
|
+
arguments: appArguments
|
|
305
|
+
} }));
|
|
306
|
+
};
|
|
307
|
+
function detectArchBinary(binary) {
|
|
308
|
+
if (typeof binary === 'string' || Array.isArray(binary)) {
|
|
309
|
+
return binary;
|
|
310
|
+
}
|
|
311
|
+
var _a = binary, _b = arch, archBinary = _a[_b];
|
|
312
|
+
if (!archBinary) {
|
|
313
|
+
throw new Error("".concat(arch, " is not supported"));
|
|
314
|
+
}
|
|
315
|
+
return archBinary;
|
|
316
|
+
}
|
|
317
|
+
function detectPlatformBinary(_a, _b) {
|
|
318
|
+
var _c = platform, platformBinary = _a[_c];
|
|
319
|
+
var wsl = _b.wsl;
|
|
320
|
+
if (wsl && is_wsl_1["default"]) {
|
|
321
|
+
return detectArchBinary(wsl);
|
|
322
|
+
}
|
|
323
|
+
if (!platformBinary) {
|
|
324
|
+
throw new Error("".concat(platform, " is not supported"));
|
|
325
|
+
}
|
|
326
|
+
return detectArchBinary(platformBinary);
|
|
327
|
+
}
|
|
328
|
+
var apps = {};
|
|
329
|
+
(0, define_lazy_prop_1["default"])(apps, 'chrome', function () { return detectPlatformBinary({
|
|
330
|
+
darwin: 'google chrome',
|
|
331
|
+
win32: 'chrome',
|
|
332
|
+
linux: ['google-chrome', 'google-chrome-stable', 'chromium']
|
|
333
|
+
}, {
|
|
334
|
+
wsl: {
|
|
335
|
+
ia32: '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe',
|
|
336
|
+
x64: ['/mnt/c/Program Files/Google/Chrome/Application/chrome.exe', '/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe']
|
|
337
|
+
}
|
|
338
|
+
}); });
|
|
339
|
+
(0, define_lazy_prop_1["default"])(apps, 'firefox', function () { return detectPlatformBinary({
|
|
340
|
+
darwin: 'firefox',
|
|
341
|
+
win32: 'C:\\Program Files\\Mozilla Firefox\\firefox.exe',
|
|
342
|
+
linux: 'firefox'
|
|
343
|
+
}, {
|
|
344
|
+
wsl: '/mnt/c/Program Files/Mozilla Firefox/firefox.exe'
|
|
345
|
+
}); });
|
|
346
|
+
(0, define_lazy_prop_1["default"])(apps, 'edge', function () { return detectPlatformBinary({
|
|
347
|
+
darwin: 'microsoft edge',
|
|
348
|
+
win32: 'msedge',
|
|
349
|
+
linux: ['microsoft-edge', 'microsoft-edge-dev']
|
|
350
|
+
}, {
|
|
351
|
+
wsl: '/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe'
|
|
352
|
+
}); });
|
|
353
|
+
open.apps = apps;
|
|
354
|
+
open.openApp = openApp;
|
|
355
|
+
exports["default"] = open;
|