@sevenvip666/rop 0.1.5 → 0.1.7

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.
@@ -15,6 +15,7 @@ import JSON5 from 'json5';
15
15
  import yaml from 'js-yaml';
16
16
  import { confirm, select, input, password } from '@inquirer/prompts';
17
17
  import * as os from 'node:os';
18
+ import os__default from 'node:os';
18
19
 
19
20
  /******************************************************************************
20
21
  Copyright (c) Microsoft Corporation.
@@ -642,6 +643,10 @@ var RopUploadApi = /** @class */ (function () {
642
643
  console.log(colors.red("Either accessKey or token must be used"));
643
644
  return [2 /*return*/, false];
644
645
  }
646
+ if (!config.teamSign) {
647
+ console.log(colors.red("Either accessKey or teamSign must be used"));
648
+ return [2 /*return*/, false];
649
+ }
645
650
  if (!config.projectId) {
646
651
  console.log(colors.red("projectId cannot be empty"));
647
652
  return [2 /*return*/, false];
@@ -704,7 +709,7 @@ var RopUploadApi = /** @class */ (function () {
704
709
  case 1:
705
710
  config = _c.sent();
706
711
  if (!config) {
707
- return [2 /*return*/];
712
+ process.exit(1);
708
713
  }
709
714
  formData = new FormData();
710
715
  fileStream = fs.createReadStream(config.targetPath);
@@ -766,6 +771,7 @@ var RopUploadApi = /** @class */ (function () {
766
771
  body = _c.sent();
767
772
  if (!res.ok) {
768
773
  console.log(res.status, res.statusText, body);
774
+ process.exit(1);
769
775
  }
770
776
  multibar.stop();
771
777
  fileStream.destroy();
@@ -866,7 +872,7 @@ var InitApi = /** @class */ (function () {
866
872
  return InitApi;
867
873
  }());
868
874
 
869
- var defaultHost = 'https://rop.xh920.com';
875
+ var defaultHost = 'http://dev.api.rop.coolcatapp.com';
870
876
  var getHost = function () {
871
877
  var configFilePath = path.join('.rop', 'config.json');
872
878
  if (fs$1.existsSync(configFilePath)) {
@@ -1058,7 +1064,7 @@ var AuthApi = /** @class */ (function () {
1058
1064
  }());
1059
1065
 
1060
1066
  var init = function () { return __awaiter(void 0, void 0, void 0, function () {
1061
- var host, authApi, user, needLink, projectId, framework, accessKey, projectName_1, project, projectName, body_1, project, init;
1067
+ var host, authApi, user, chooseTeam, teamSign, loginRes, homedir, teamSignFile, needLink, projectId, framework, accessKey, projectName_1, currentFolderName, project, projectName, currentFolderName, body_1, project, init;
1062
1068
  return __generator(this, function (_a) {
1063
1069
  switch (_a.label) {
1064
1070
  case 0:
@@ -1069,51 +1075,98 @@ var init = function () { return __awaiter(void 0, void 0, void 0, function () {
1069
1075
  user = _a.sent();
1070
1076
  if (!user) {
1071
1077
  console.log(colors.red("No permission! Please execute [rop login]"));
1072
- return [2 /*return*/];
1078
+ process.exit(1);
1073
1079
  }
1074
1080
  return [4 /*yield*/, confirm({
1075
- message: "Link to existing project?",
1081
+ message: "Do you want to choose a team?",
1076
1082
  })];
1077
1083
  case 2:
1078
- needLink = _a.sent();
1079
- accessKey = undefined;
1080
- if (!needLink) return [3 /*break*/, 7];
1081
- _a.label = 3;
1084
+ chooseTeam = _a.sent();
1085
+ if (!chooseTeam) return [3 /*break*/, 5];
1086
+ return [4 /*yield*/, authApi.request(function (token) { return __awaiter(void 0, void 0, void 0, function () {
1087
+ return __generator(this, function (_a) {
1088
+ return [2 /*return*/, fetch("".concat(host, "/api/user"), {
1089
+ method: 'GET',
1090
+ headers: {
1091
+ Authorization: "Bearer ".concat(token),
1092
+ },
1093
+ })];
1094
+ });
1095
+ }); })];
1082
1096
  case 3:
1083
- if (!!projectName_1) return [3 /*break*/, 5];
1084
- return [4 /*yield*/, input({ message: "What\u2019s the name of your existing project?" })];
1097
+ loginRes = _a.sent();
1098
+ if (!loginRes) {
1099
+ console.log(colors.red("No permission! Please execute [rop login]"));
1100
+ process.exit(1);
1101
+ }
1102
+ if ((loginRes === null || loginRes === void 0 ? void 0 : loginRes.teams.length) <= 0) {
1103
+ console.log(colors.yellow("You are not currently in a team, Unable to choose"));
1104
+ process.exit(1);
1105
+ }
1106
+ return [4 /*yield*/, select({
1107
+ message: "Please Select ".concat(colors.cyan('team')),
1108
+ choices: loginRes === null || loginRes === void 0 ? void 0 : loginRes.teams.map(function (item) { return ({ name: item.name, value: item.sign }); }),
1109
+ })];
1085
1110
  case 4:
1111
+ teamSign = _a.sent();
1112
+ homedir = path.join(os__default.homedir(), '.rop');
1113
+ teamSignFile = path.join(homedir, 'team_sign');
1114
+ fs.writeFileSync(teamSignFile, teamSign, 'utf8');
1115
+ _a.label = 5;
1116
+ case 5: return [4 /*yield*/, confirm({
1117
+ message: "Link to existing project?",
1118
+ })];
1119
+ case 6:
1120
+ needLink = _a.sent();
1121
+ accessKey = undefined;
1122
+ if (!needLink) return [3 /*break*/, 11];
1123
+ currentFolderName = getCurrentFolderName();
1124
+ _a.label = 7;
1125
+ case 7:
1126
+ if (!!projectName_1) return [3 /*break*/, 9];
1127
+ return [4 /*yield*/, input({
1128
+ message: "What\u2019s the name of your existing project?",
1129
+ default: currentFolderName,
1130
+ })];
1131
+ case 8:
1086
1132
  projectName_1 = _a.sent();
1087
- return [3 /*break*/, 3];
1088
- case 5: return [4 /*yield*/, authApi.request(function (token) { return __awaiter(void 0, void 0, void 0, function () {
1133
+ return [3 /*break*/, 7];
1134
+ case 9: return [4 /*yield*/, authApi.request(function (token) { return __awaiter(void 0, void 0, void 0, function () {
1135
+ var headers;
1089
1136
  return __generator(this, function (_a) {
1137
+ headers = {
1138
+ Authorization: "Bearer ".concat(token),
1139
+ };
1140
+ if (teamSign) {
1141
+ // @ts-ignore
1142
+ headers['Team-sign'] = teamSign;
1143
+ }
1090
1144
  return [2 /*return*/, fetch("".concat(host, "/api/project/").concat(projectName_1), {
1091
1145
  method: 'GET',
1092
- headers: {
1093
- Authorization: "Bearer ".concat(token),
1094
- },
1146
+ headers: headers,
1095
1147
  })];
1096
1148
  });
1097
1149
  }); })];
1098
- case 6:
1150
+ case 10:
1099
1151
  project = _a.sent();
1100
1152
  if (!project) {
1101
1153
  console.log(colors.yellow("project not found"));
1102
- return [2 /*return*/];
1154
+ process.exit(1);
1103
1155
  }
1104
1156
  projectId = project.id;
1105
1157
  framework = project.framework;
1106
- return [3 /*break*/, 13];
1107
- case 7:
1158
+ return [3 /*break*/, 17];
1159
+ case 11:
1108
1160
  projectName = void 0;
1109
- _a.label = 8;
1110
- case 8:
1111
- if (!!projectName) return [3 /*break*/, 10];
1112
- return [4 /*yield*/, input({ message: "What\u2019s your project\u2019s name?" })];
1113
- case 9:
1161
+ currentFolderName = getCurrentFolderName();
1162
+ _a.label = 12;
1163
+ case 12:
1164
+ if (!!projectName) return [3 /*break*/, 14];
1165
+ return [4 /*yield*/, input({ message: "What\u2019s your project\u2019s name?", default: currentFolderName })];
1166
+ case 13:
1114
1167
  projectName = _a.sent();
1115
- return [3 /*break*/, 8];
1116
- case 10: return [4 /*yield*/, select({
1168
+ return [3 /*break*/, 12];
1169
+ case 14: return [4 /*yield*/, select({
1117
1170
  message: "Please Select ".concat(colors.cyan('framework')),
1118
1171
  choices: [
1119
1172
  {
@@ -1134,62 +1187,75 @@ var init = function () { return __awaiter(void 0, void 0, void 0, function () {
1134
1187
  },
1135
1188
  ],
1136
1189
  })];
1137
- case 11:
1190
+ case 15:
1138
1191
  framework = _a.sent();
1139
1192
  body_1 = {
1140
1193
  name: projectName,
1141
1194
  framework: framework,
1142
1195
  };
1143
1196
  return [4 /*yield*/, authApi.request(function (token) { return __awaiter(void 0, void 0, void 0, function () {
1197
+ var headers;
1144
1198
  return __generator(this, function (_a) {
1199
+ headers = {
1200
+ Authorization: "Bearer ".concat(token),
1201
+ };
1202
+ if (teamSign) {
1203
+ // @ts-ignore
1204
+ headers['Team-sign'] = teamSign;
1205
+ }
1145
1206
  return [2 /*return*/, fetch("".concat(host, "/api/project"), {
1146
1207
  method: 'POST',
1147
- headers: {
1148
- Accept: 'application/json',
1149
- 'Content-Type': 'application/json;charset=utf-8',
1150
- Authorization: "Bearer ".concat(token),
1151
- },
1208
+ headers: __assign({ Accept: 'application/json', 'Content-Type': 'application/json;charset=utf-8' }, headers),
1152
1209
  body: JSON.stringify(body_1),
1153
1210
  })];
1154
1211
  });
1155
1212
  }); })];
1156
- case 12:
1213
+ case 16:
1157
1214
  project = _a.sent();
1158
1215
  if (!project) {
1159
1216
  console.log(colors.red("project create failed"));
1160
- return [2 /*return*/];
1217
+ process.exit(1);
1161
1218
  }
1162
1219
  projectId = project.id;
1163
1220
  framework = project.framework;
1164
1221
  accessKey = project.accessKeys[0].accessKey;
1165
- _a.label = 13;
1166
- case 13:
1222
+ _a.label = 17;
1223
+ case 17:
1167
1224
  init = new InitApi();
1168
1225
  return [4 /*yield*/, init.initProjectConfigJson(framework)];
1169
- case 14:
1170
- if (!_a.sent()) return [3 /*break*/, 17];
1226
+ case 18:
1227
+ if (!_a.sent()) return [3 /*break*/, 21];
1171
1228
  return [4 /*yield*/, init.initRopConfig(projectId, accessKey)];
1172
- case 15:
1229
+ case 19:
1173
1230
  _a.sent();
1174
1231
  return [4 /*yield*/, init.initGitignore()];
1175
- case 16:
1232
+ case 20:
1176
1233
  _a.sent();
1177
1234
  console.log(colors.green("Initialize project successfully!"));
1178
1235
  if (framework.toLowerCase() === 'tauri') {
1179
1236
  console.log(colors.blue("updater endpoints : ".concat(host, "/api/tauri/").concat(projectId, "/[your branch]/{{target}}/{{arch}}/{{current_version}}")));
1180
1237
  console.log('Please replace [your branch] with your own branch');
1181
1238
  }
1182
- return [2 /*return*/, {
1183
- projectId: projectId,
1184
- accessKey: accessKey,
1185
- }];
1186
- case 17: return [2 /*return*/, {
1187
- projectId: undefined,
1188
- accessKey: undefined,
1239
+ _a.label = 21;
1240
+ case 21: return [2 /*return*/, {
1241
+ projectId: projectId,
1242
+ accessKey: accessKey,
1189
1243
  }];
1190
1244
  }
1191
1245
  });
1192
1246
  }); };
1247
+ var getTeamSign = function () { return __awaiter(void 0, void 0, void 0, function () {
1248
+ var homedir, teamSignFile;
1249
+ return __generator(this, function (_a) {
1250
+ homedir = path.join(os__default.homedir(), '.rop');
1251
+ teamSignFile = path.join(homedir, 'team_sign');
1252
+ return [2 /*return*/, fs.readFileSync(teamSignFile, 'utf8')];
1253
+ });
1254
+ }); };
1255
+ function getCurrentFolderName() {
1256
+ var __dirname = path.resolve();
1257
+ return path.basename(__dirname);
1258
+ }
1193
1259
 
1194
1260
  var login = function (options) { return __awaiter(void 0, void 0, void 0, function () {
1195
1261
  var username, password$1, loginReq, auth, result;
@@ -1210,7 +1276,8 @@ var login = function (options) { return __awaiter(void 0, void 0, void 0, functi
1210
1276
  case 4:
1211
1277
  _a.sent();
1212
1278
  console.log(colors.gray('cancel'));
1213
- return [2 /*return*/];
1279
+ process.exit(1);
1280
+ return [3 /*break*/, 5];
1214
1281
  case 5: return [3 /*break*/, 1];
1215
1282
  case 6:
1216
1283
  if (!!password$1) return [3 /*break*/, 11];
@@ -1224,7 +1291,8 @@ var login = function (options) { return __awaiter(void 0, void 0, void 0, functi
1224
1291
  case 9:
1225
1292
  _a.sent();
1226
1293
  console.log(colors.gray('cancel'));
1227
- return [2 /*return*/];
1294
+ process.exit(1);
1295
+ return [3 /*break*/, 10];
1228
1296
  case 10: return [3 /*break*/, 6];
1229
1297
  case 11:
1230
1298
  loginReq = {
@@ -1235,22 +1303,23 @@ var login = function (options) { return __awaiter(void 0, void 0, void 0, functi
1235
1303
  return [4 /*yield*/, auth.login(loginReq)];
1236
1304
  case 12:
1237
1305
  result = _a.sent();
1238
- if (result) {
1239
- console.log(colors.green("Login successful. Please use [rop init] to create a project."));
1306
+ if (!result) {
1307
+ process.exit(1);
1240
1308
  }
1309
+ console.log(colors.green("Login successful. Please use [rop init] to create a project."));
1241
1310
  return [2 /*return*/];
1242
1311
  }
1243
1312
  });
1244
1313
  }); };
1245
1314
 
1246
1315
  var upload = function (platform, arch, options) { return __awaiter(void 0, void 0, void 0, function () {
1247
- var host, projectId, token, jsonConfig, initConfig, authApi, user, configFilePath, data, targetInfos, reset, _i, targetInfos_1, item;
1316
+ var host, projectId, token, teamSign, jsonConfig, initConfig, authApi, user, configFilePath, data, targetInfos, reset, _i, targetInfos_1, item;
1248
1317
  var _a;
1249
1318
  return __generator(this, function (_b) {
1250
1319
  switch (_b.label) {
1251
1320
  case 0:
1252
1321
  host = getHost();
1253
- if (!!options.accessKey) return [3 /*break*/, 5];
1322
+ if (!!options.accessKey) return [3 /*break*/, 6];
1254
1323
  jsonConfig = loadConfigJSON();
1255
1324
  if (!!jsonConfig.projectId) return [3 /*break*/, 2];
1256
1325
  return [4 /*yield*/, init()];
@@ -1260,7 +1329,7 @@ var upload = function (platform, arch, options) { return __awaiter(void 0, void
1260
1329
  projectId = initConfig.projectId;
1261
1330
  }
1262
1331
  else {
1263
- return [2 /*return*/];
1332
+ process.exit(1);
1264
1333
  }
1265
1334
  return [3 /*break*/, 3];
1266
1335
  case 2:
@@ -1273,47 +1342,50 @@ var upload = function (platform, arch, options) { return __awaiter(void 0, void
1273
1342
  user = _b.sent();
1274
1343
  if (!user) {
1275
1344
  console.log(colors.red("No permission! Please execute [rop login]"));
1276
- return [2 /*return*/];
1345
+ process.exit(1);
1277
1346
  }
1278
1347
  token = user.auth.accessToken;
1279
- _b.label = 5;
1348
+ return [4 /*yield*/, getTeamSign()];
1280
1349
  case 5:
1350
+ teamSign = _b.sent();
1351
+ _b.label = 6;
1352
+ case 6:
1281
1353
  configFilePath = path.join('.', 'rop.json');
1282
1354
  if (!fs$1.existsSync(configFilePath)) {
1283
1355
  console.log(colors.red('rop.json not found'));
1284
- return [2 /*return*/];
1356
+ process.exit(1);
1285
1357
  }
1286
1358
  data = loadJsonWithEnv({
1287
1359
  platform: platform,
1288
1360
  arch: arch,
1289
1361
  });
1290
1362
  if (!data) {
1291
- return [2 /*return*/];
1363
+ process.exit(1);
1292
1364
  }
1293
1365
  targetInfos = data.targetInfos, data.config, reset = __rest(data, ["targetInfos", "config"]);
1294
1366
  _i = 0, targetInfos_1 = targetInfos;
1295
- _b.label = 6;
1296
- case 6:
1297
- if (!(_i < targetInfos_1.length)) return [3 /*break*/, 9];
1298
- item = targetInfos_1[_i];
1299
- return [4 /*yield*/, _upload(__assign(__assign({ accessKey: options.accessKey, projectId: projectId, token: token }, reset), { artifact: item.artifacts, host: host, platform: platform, branch: options.branch, autoRelease: (_a = options.release) !== null && _a !== void 0 ? _a : false }))];
1367
+ _b.label = 7;
1300
1368
  case 7:
1301
- _b.sent();
1302
- _b.label = 8;
1369
+ if (!(_i < targetInfos_1.length)) return [3 /*break*/, 10];
1370
+ item = targetInfos_1[_i];
1371
+ return [4 /*yield*/, _upload(__assign(__assign({ accessKey: options.accessKey, projectId: projectId, token: token, teamSign: teamSign }, reset), { artifact: item.artifacts, host: host, platform: platform, branch: options.branch, autoRelease: (_a = options.release) !== null && _a !== void 0 ? _a : false }))];
1303
1372
  case 8:
1373
+ _b.sent();
1374
+ _b.label = 9;
1375
+ case 9:
1304
1376
  _i++;
1305
- return [3 /*break*/, 6];
1306
- case 9: return [2 /*return*/];
1377
+ return [3 /*break*/, 7];
1378
+ case 10: return [2 /*return*/];
1307
1379
  }
1308
1380
  });
1309
1381
  }); };
1310
1382
  var _upload = function (config) { return __awaiter(void 0, void 0, void 0, function () {
1311
- var accessKey, projectId, token, artifact, arch, version, platform, autoRelease, signature, uploadClient;
1383
+ var accessKey, projectId, token, teamSign, artifact, arch, version, platform, autoRelease, signature, uploadClient;
1312
1384
  var _a, _b, _c, _d, _e;
1313
1385
  return __generator(this, function (_f) {
1314
1386
  switch (_f.label) {
1315
1387
  case 0:
1316
- accessKey = config.accessKey, projectId = config.projectId, token = config.token, artifact = config.artifact, arch = config.arch, version = config.version, platform = config.platform, config.host, autoRelease = config.autoRelease;
1388
+ accessKey = config.accessKey, projectId = config.projectId, token = config.token, teamSign = config.teamSign, artifact = config.artifact, arch = config.arch, version = config.version, platform = config.platform, config.host, autoRelease = config.autoRelease;
1317
1389
  if ((_a = artifact.sig) === null || _a === void 0 ? void 0 : _a.path) {
1318
1390
  if (fs$1.existsSync(artifact.sig.path)) {
1319
1391
  signature = fs$1.readFileSync(artifact.sig.path, 'utf8');
@@ -1327,6 +1399,7 @@ var _upload = function (config) { return __awaiter(void 0, void 0, void 0, funct
1327
1399
  accessKey: accessKey,
1328
1400
  projectId: projectId,
1329
1401
  token: token,
1402
+ teamSign: teamSign,
1330
1403
  arch: arch,
1331
1404
  platform: platform,
1332
1405
  version: version,
package/dist/cjs/index.js CHANGED
@@ -135,6 +135,10 @@ var RopUploadApi = /** @class */ (function () {
135
135
  console.log(colors.red("Either accessKey or token must be used"));
136
136
  return [2 /*return*/, false];
137
137
  }
138
+ if (!config.teamSign) {
139
+ console.log(colors.red("Either accessKey or teamSign must be used"));
140
+ return [2 /*return*/, false];
141
+ }
138
142
  if (!config.projectId) {
139
143
  console.log(colors.red("projectId cannot be empty"));
140
144
  return [2 /*return*/, false];
@@ -197,7 +201,7 @@ var RopUploadApi = /** @class */ (function () {
197
201
  case 1:
198
202
  config = _c.sent();
199
203
  if (!config) {
200
- return [2 /*return*/];
204
+ process.exit(1);
201
205
  }
202
206
  formData = new FormData();
203
207
  fileStream = fs.createReadStream(config.targetPath);
@@ -259,6 +263,7 @@ var RopUploadApi = /** @class */ (function () {
259
263
  body = _c.sent();
260
264
  if (!res.ok) {
261
265
  console.log(res.status, res.statusText, body);
266
+ process.exit(1);
262
267
  }
263
268
  multibar.stop();
264
269
  fileStream.destroy();
@@ -359,7 +364,7 @@ var InitApi = /** @class */ (function () {
359
364
  return InitApi;
360
365
  }());
361
366
 
362
- var defaultHost = 'https://rop.xh920.com';
367
+ var defaultHost = 'http://dev.api.rop.coolcatapp.com';
363
368
 
364
369
  var LOGIN_API = '/api/auth/login';
365
370
  var REFRESH_TOKEN_API = '/api/auth/refresh';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@rollup+plugin-typescript@11.1.6_rollup@4.19.1_tslib@2.6.3_typescript@5.4.5/node_modules/tslib/tslib.es6.js","../../src/types.ts","../../src/utils.ts","../../src/uploadApi.ts","../../src/initApi.ts","../../src/config.ts","../../src/authApi.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export var frameworkList = ['tauri', 'ionic', 'flutter'];\nexport var Framework;\n(function (Framework) {\n Framework[\"TAURI\"] = \"tauri\";\n Framework[\"IONIC\"] = \"ionic\";\n Framework[\"FLUTTER\"] = \"flutter\";\n})(Framework || (Framework = {}));\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { exec } from 'child_process';\nimport path from 'node:path';\nimport fs from 'node:fs';\nimport { Framework, frameworkList, } from './types';\nimport { getTauriEnv } from './tauri';\nimport platformDefaultConfigMap from './default-platform.json';\nimport { getFlutterEnv } from './flutter';\nimport { getIonicEnv } from './ionic';\nimport colors from 'ansi-colors';\nexport var getBranch = function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, new Promise(function (resolve) {\n return exec('git rev-parse --abbrev-ref HEAD', function (err, stdout, stderr) {\n if (err) {\n console.log(\"getBranch Error: \".concat(err));\n }\n else if (stdout) {\n resolve(stdout.trim());\n return;\n }\n resolve('none');\n });\n })];\n });\n}); };\n// 读取 JSON 文件并替换模版变量\nexport function loadJsonWithEnv(_a) {\n var _b, _c, _d, _e, _f;\n var platform = _a.platform, arch = _a.arch;\n var configFilePath = path.join('.', 'rop.json');\n var configData = fs.readFileSync(configFilePath, 'utf8');\n var inputConfig = JSON.parse(configData);\n var _arch = arch !== null && arch !== void 0 ? arch : 'universal';\n if (arch == 'x86_64') {\n _arch = 'x64';\n }\n else if (arch == 'i386' || arch == 'i686') {\n _arch = 'x86';\n }\n else if (arch == 'aarch64') {\n _arch = 'arm64';\n }\n var env = {\n arch: _arch,\n };\n var config;\n if (!inputConfig.platforms && ((_b = inputConfig.framework) === null || _b === void 0 ? void 0 : _b.name) && frameworkList.includes((_c = inputConfig.framework) === null || _c === void 0 ? void 0 : _c.name)) {\n var framework = inputConfig.framework.name;\n var defaultPlatformConfig = platformDefaultConfigMap[framework];\n var _config = __assign(__assign({}, inputConfig), { platforms: defaultPlatformConfig });\n config = _config;\n }\n else {\n config = inputConfig;\n }\n if (!config.platforms || Object.keys(config.platforms).length == 0) {\n console.log(colors.red('The platforms property in rop.json cannot be empty.'));\n return;\n }\n var _autoEnv = getAutoEnvByFramework((_d = config === null || config === void 0 ? void 0 : config.framework) === null || _d === void 0 ? void 0 : _d.name, config.projectPath);\n env = __assign(__assign(__assign({}, env), (_autoEnv !== null && _autoEnv !== void 0 ? _autoEnv : {})), ((_f = (_e = config.framework) === null || _e === void 0 ? void 0 : _e.env) !== null && _f !== void 0 ? _f : {}));\n // 确保配置文件中存在 host 属性\n if (!env.version) {\n console.log(colors.red('The version property in rop.json cannot be empty.'));\n return;\n }\n // 递归函数来替换对象中的字符串值\n function replaceEnvInObject(obj) {\n Object.keys(obj).forEach(function (key) {\n if (typeof obj[key] === 'string') {\n // 使用正则表达式替换模版变量(这里假设模版变量是 ${VAR} 格式的)\n // @ts-ignore\n obj[key] = obj[key].replace(/\\$\\{(\\w+)\\}/g, function (_, envVar) { return env[envVar] || ''; });\n }\n else if (typeof obj[key] === 'object' && obj[key] !== null) {\n replaceEnvInObject(obj[key]); // 递归处理嵌套对象\n }\n });\n }\n replaceEnvInObject(config);\n var targetInfos = getTargetInfo(config.platforms, platform, _arch);\n console.log(colors.cyan(\"find target file:\"));\n console.log(\"\".concat(JSON.stringify(targetInfos)));\n return { config: config, targetInfos: targetInfos, version: env.version, arch: _arch };\n}\nexport var loadConfigJSON = function () {\n var configFilePath = path.join('.rop', 'config.json');\n if (!fs.existsSync(configFilePath)) {\n return {\n projectId: undefined,\n };\n }\n var configDataStr = fs.readFileSync(configFilePath, 'utf8');\n var configData = JSON.parse(configDataStr);\n return {\n projectId: configData.projectId,\n accessKey: configData.accessKey,\n };\n};\nexport var getAutoEnvByFramework = function (framework, projectPath) {\n if (!framework) {\n return undefined;\n }\n switch (framework.toLowerCase()) {\n case Framework.TAURI:\n return getTauriEnv(projectPath);\n case Framework.FLUTTER:\n return getFlutterEnv(projectPath);\n case Framework.IONIC:\n return getIonicEnv(projectPath);\n default:\n return undefined;\n }\n};\nexport var getTargetInfo = function (platforms, platform, arch) {\n var list = platforms[platform];\n if (list && list.length > 0) {\n var targetList = list.filter(function (item) { return item.arch == arch; });\n if (targetList.length > 0) {\n return targetList;\n }\n }\n throw new Error('Not find artifacts file');\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport fs from 'fs';\nimport fetch from 'node-fetch';\nimport FormData from 'form-data';\nimport cliProgress from 'cli-progress';\nimport colors from 'ansi-colors';\nimport path from 'path';\nimport { getBranch } from './utils';\nvar RopUploadApi = /** @class */ (function () {\n function RopUploadApi(_a) {\n var baseDomain = _a.baseDomain;\n var _this = this;\n this.checkParams = function (config) { return __awaiter(_this, void 0, void 0, function () {\n var branch, _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (!config.accessKey) {\n if (!config.token) {\n console.log(colors.red(\"Either accessKey or token must be used\"));\n return [2 /*return*/, false];\n }\n if (!config.projectId) {\n console.log(colors.red(\"projectId cannot be empty\"));\n return [2 /*return*/, false];\n }\n }\n if (!((_b = config.branch) !== null && _b !== void 0)) return [3 /*break*/, 1];\n _a = _b;\n return [3 /*break*/, 3];\n case 1: return [4 /*yield*/, getBranch()];\n case 2:\n _a = (_c.sent());\n _c.label = 3;\n case 3:\n branch = _a;\n if (!branch) {\n console.log(colors.red(\"branch cannot be empty\"));\n return [2 /*return*/, false];\n }\n else {\n config.branch = branch;\n }\n if (!config.platform) {\n console.log(colors.red(\"platform cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!config.arch) {\n console.log(colors.red(\"arch cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!config.targetPath) {\n console.log(colors.red(\"target path cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!fs.existsSync(config.targetPath)) {\n console.log(colors.red(\"target file not found, file path: \".concat(config.targetPath)));\n return [2 /*return*/, false];\n }\n // 如果更新包不存在的情况使用本身的包\n if (config.updatePath && !fs.existsSync(config.updatePath)) {\n config.updatePath = config.targetPath;\n config.updateName = config.targetName;\n }\n if (!config.version) {\n console.log(colors.red(\"version cannot be empty\"));\n return [2 /*return*/, false];\n }\n return [2 /*return*/, config];\n }\n });\n }); };\n this.baseDomain = baseDomain;\n }\n RopUploadApi.prototype.upload = function (_config) {\n return __awaiter(this, void 0, void 0, function () {\n var config, formData, fileStream, multibar, bar1, totalUploaded, updateFileStream, bar2_1, totalUpdateUploaded_1, res, body;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4 /*yield*/, this.checkParams(_config)];\n case 1:\n config = _c.sent();\n if (!config) {\n return [2 /*return*/];\n }\n formData = new FormData();\n fileStream = fs.createReadStream(config.targetPath);\n multibar = new cliProgress.MultiBar({\n format: 'Upload Progress |' + colors.cyan('{bar}') + '| {percentage}% | {filename}',\n barCompleteChar: '\\u2588',\n barIncompleteChar: '\\u2591',\n hideCursor: true,\n });\n bar1 = multibar.create(fs.statSync(config.targetPath).size, 0);\n totalUploaded = 0;\n fileStream.on('data', function (chunk) {\n totalUploaded += chunk.length;\n bar1.update(totalUploaded, { filename: path.basename(config.targetPath) });\n });\n formData.append('targetFile', fileStream, {\n filename: (_a = config.targetName) !== null && _a !== void 0 ? _a : path.basename(config.targetPath),\n });\n if (config.updatePath) {\n bar2_1 = multibar.create(fs.statSync(config.updatePath).size, 0);\n updateFileStream = fs.createReadStream(config.updatePath);\n totalUpdateUploaded_1 = 0;\n updateFileStream.on('data', function (chunk) {\n totalUpdateUploaded_1 += chunk.length;\n bar2_1.update(totalUpdateUploaded_1, { filename: path.basename(config.updatePath) });\n });\n formData.append('updateFile', updateFileStream, {\n filename: (_b = config.updateName) !== null && _b !== void 0 ? _b : path.basename(config.updatePath),\n });\n }\n if (config.accessKey) {\n formData.append('accessKey', config.accessKey);\n }\n if (config.projectId) {\n formData.append('projectId', config.projectId);\n }\n if (config.token) {\n formData.append('token', config.token);\n }\n formData.append('branch', config.branch);\n formData.append('version', config.version);\n formData.append('platform', config.platform);\n formData.append('arch', config.arch);\n if (config.signature) {\n formData.append('signature', config.signature);\n }\n if (config.autoRelease) {\n formData.append('autoRelease', String(config.autoRelease));\n }\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain, \"/api/upload\"), {\n method: 'POST',\n headers: formData.getHeaders(),\n body: formData,\n })];\n case 2:\n res = _c.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n body = _c.sent();\n if (!res.ok) {\n console.log(res.status, res.statusText, body);\n }\n else {\n // console.log('上传成功!');\n }\n multibar.stop();\n fileStream.destroy();\n updateFileStream === null || updateFileStream === void 0 ? void 0 : updateFileStream.destroy();\n console.log(colors.green(\"Upload success!\"));\n return [2 /*return*/, { success: res.ok, body: body }];\n }\n });\n });\n };\n return RopUploadApi;\n}());\nexport { RopUploadApi };\n","import { __awaiter, __generator } from \"tslib\";\nimport { confirm } from '@inquirer/prompts';\nimport colors from 'ansi-colors';\nimport path from 'node:path';\nimport fs from 'node:fs';\nvar InitApi = /** @class */ (function () {\n function InitApi() {\n }\n InitApi.prototype.initProjectConfigJson = function (framework) {\n return __awaiter(this, void 0, void 0, function () {\n var jsonConfigPath, jsonConfigData, flag, str;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n jsonConfigPath = path.join('.', 'rop.json');\n if (!fs.existsSync(jsonConfigPath)) return [3 /*break*/, 2];\n return [4 /*yield*/, confirm({\n message: \"\".concat(colors.cyan('rop.json'), \" already exists, does it need to be overwritten?\"),\n })];\n case 1:\n flag = _a.sent();\n if (!flag) {\n return [2 /*return*/, false];\n }\n str = fs.readFileSync(jsonConfigPath, 'utf8');\n jsonConfigData = JSON.parse(str);\n if (!jsonConfigData.framework) {\n jsonConfigData.framework = {\n name: framework,\n };\n }\n else {\n jsonConfigData.framework.name = framework;\n }\n return [3 /*break*/, 3];\n case 2:\n jsonConfigData = {\n framework: {\n name: framework,\n },\n };\n _a.label = 3;\n case 3:\n fs.writeFileSync(jsonConfigPath, JSON.stringify(jsonConfigData, null, 2), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n InitApi.prototype.initRopConfig = function (projectId, accessKey) {\n return __awaiter(this, void 0, void 0, function () {\n var ropConfigDirPath, ropConfigPath, ropConfigData;\n return __generator(this, function (_a) {\n ropConfigDirPath = path.join('.', '.rop');\n if (!fs.existsSync(ropConfigDirPath)) {\n fs.mkdirSync(ropConfigDirPath);\n }\n ropConfigPath = path.join(ropConfigDirPath, 'config.json');\n ropConfigData = {};\n if (fs.existsSync(ropConfigPath)) {\n ropConfigData = JSON.parse(fs.readFileSync(ropConfigPath, 'utf8'));\n }\n ropConfigData.projectId = projectId;\n if (accessKey) {\n ropConfigData.accessKey = accessKey;\n }\n fs.writeFileSync(ropConfigPath, JSON.stringify(ropConfigData, null, 2), 'utf8');\n return [2 /*return*/];\n });\n });\n };\n InitApi.prototype.initGitignore = function () {\n return __awaiter(this, void 0, void 0, function () {\n var gitignorePath, gitignoreData;\n return __generator(this, function (_a) {\n gitignorePath = path.join('.', '.gitignore');\n if (fs.existsSync(gitignorePath)) {\n gitignoreData = fs.readFileSync(gitignorePath, 'utf8');\n if (!gitignoreData.includes('.rop')) {\n fs.appendFileSync(gitignorePath, \"\\n.rop\", 'utf8');\n }\n }\n else {\n fs.writeFileSync(gitignorePath, \".rop\", 'utf8');\n }\n return [2 /*return*/];\n });\n });\n };\n return InitApi;\n}());\nexport { InitApi };\n","import path from 'node:path';\nimport fs from 'node:fs';\nexport var defaultHost = 'https://rop.xh920.com';\nexport var getHost = function () {\n var configFilePath = path.join('.rop', 'config.json');\n if (fs.existsSync(configFilePath)) {\n var config = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));\n if (config.host) {\n return config.host;\n }\n }\n return defaultHost;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport fs from 'fs';\nimport * as os from 'node:os';\nimport path from 'node:path';\nimport { defaultHost } from './config';\nimport colors from 'ansi-colors';\nvar LOGIN_API = '/api/auth/login';\nvar REFRESH_TOKEN_API = '/api/auth/refresh';\nvar CHECK_AND_REFRESH_TOKEN_API = '/api/auth/checkAndRefresh';\nvar AuthApi = /** @class */ (function () {\n function AuthApi(_a) {\n var baseDomain = _a.baseDomain;\n this.baseDomain = baseDomain !== null && baseDomain !== void 0 ? baseDomain : defaultHost;\n }\n AuthApi.prototype.login = function (req) {\n return __awaiter(this, void 0, void 0, function () {\n var res, resBody, homedir, userFilePath;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(LOGIN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(req),\n })];\n case 1:\n res = _b.sent();\n return [4 /*yield*/, res.json()];\n case 2:\n resBody = _b.sent();\n if (!res.ok || !resBody.data) {\n console.log(colors.red(\"Login failed: status:\".concat(res.status, \", message:\").concat((_a = resBody.message) !== null && _a !== void 0 ? _a : res.statusText)));\n return [2 /*return*/, false];\n }\n homedir = path.join(os.homedir(), '.rop');\n if (!fs.existsSync(homedir)) {\n fs.mkdirSync(homedir);\n }\n userFilePath = path.join(homedir, 'user');\n fs.writeFileSync(userFilePath, JSON.stringify(resBody.data, null, 2), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n AuthApi.prototype.refreshToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var homedir, userFilePath, user, res, resBody;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n console.log(colors.red(\"No permission! Please execute [rop login] or use --accessKey\"));\n return [2 /*return*/, false];\n }\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(REFRESH_TOKEN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify({ token: user.auth.refreshToken }),\n })];\n case 1:\n res = _a.sent();\n return [4 /*yield*/, res.json()];\n case 2:\n resBody = _a.sent();\n if (!res.ok || !resBody.data) {\n if (!resBody.message || res.status != 400) {\n console.log(colors.red(\"Refresh token failed: status:\".concat(res.status, \", statusText:\").concat(res.statusText)));\n }\n else {\n console.log(colors.red(\"Authorization expired please execute the login command\"));\n fs.rmSync(userFilePath);\n }\n return [2 /*return*/, false];\n }\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n AuthApi.prototype.getToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var homedir, userFilePath;\n return __generator(this, function (_a) {\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n return [2 /*return*/, undefined];\n }\n return [2 /*return*/, JSON.parse(fs.readFileSync(userFilePath, 'utf8'))];\n });\n });\n };\n AuthApi.prototype.checkAndRefreshToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var user, res, resBody, homedir, userFilePath;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.getToken()];\n case 1:\n user = _a.sent();\n if (!user) {\n return [2 /*return*/, undefined];\n }\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(CHECK_AND_REFRESH_TOKEN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(user.auth),\n })];\n case 2:\n res = _a.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n resBody = _a.sent();\n if (!res.ok || !resBody.data) {\n return [2 /*return*/, undefined];\n }\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return [2 /*return*/, user];\n }\n });\n });\n };\n AuthApi.prototype.request = function (req) {\n return __awaiter(this, void 0, void 0, function () {\n var user, res, resBody, _a, result;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.getToken()];\n case 1:\n user = _b.sent();\n if (!user) {\n console.log(colors.red(\"No permission! Please execute [rop login]\"));\n return [2 /*return*/, undefined];\n }\n return [4 /*yield*/, req(user.auth.accessToken)];\n case 2:\n res = _b.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n resBody = _b.sent();\n if (!(!res.ok || !resBody.data)) return [3 /*break*/, 11];\n _a = res.status;\n switch (_a) {\n case 400: return [3 /*break*/, 4];\n case 401: return [3 /*break*/, 5];\n }\n return [3 /*break*/, 9];\n case 4:\n console.log(JSON.stringify(resBody));\n return [3 /*break*/, 10];\n case 5: return [4 /*yield*/, this.refreshToken()];\n case 6:\n result = _b.sent();\n if (!result) return [3 /*break*/, 8];\n return [4 /*yield*/, this.request(req)];\n case 7: return [2 /*return*/, _b.sent()];\n case 8: return [3 /*break*/, 10];\n case 9:\n console.log(colors.red(\"request failed: status:\".concat(res.status, \", statusText:\").concat(res.statusText)));\n _b.label = 10;\n case 10: return [2 /*return*/, undefined];\n case 11: return [2 /*return*/, resBody.data];\n }\n });\n });\n };\n return AuthApi;\n}());\nexport { AuthApi };\n"],"names":["Framework","exec","fetch","path","fs","confirm","os"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@rollup+plugin-typescript@11.1.6_rollup@4.19.1_tslib@2.6.3_typescript@5.4.5/node_modules/tslib/tslib.es6.js","../../src/types.ts","../../src/utils.ts","../../src/uploadApi.ts","../../src/initApi.ts","../../src/config.ts","../../src/authApi.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export var frameworkList = ['tauri', 'ionic', 'flutter'];\nexport var Framework;\n(function (Framework) {\n Framework[\"TAURI\"] = \"tauri\";\n Framework[\"IONIC\"] = \"ionic\";\n Framework[\"FLUTTER\"] = \"flutter\";\n})(Framework || (Framework = {}));\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { exec } from 'child_process';\nimport path from 'node:path';\nimport fs from 'node:fs';\nimport { Framework, frameworkList, } from './types';\nimport { getTauriEnv } from './tauri';\nimport platformDefaultConfigMap from './default-platform.json';\nimport { getFlutterEnv } from './flutter';\nimport { getIonicEnv } from './ionic';\nimport colors from 'ansi-colors';\nexport var getBranch = function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, new Promise(function (resolve) {\n return exec('git rev-parse --abbrev-ref HEAD', function (err, stdout, stderr) {\n if (err) {\n console.log(\"getBranch Error: \".concat(err));\n }\n else if (stdout) {\n resolve(stdout.trim());\n return;\n }\n resolve('none');\n });\n })];\n });\n}); };\n// 读取 JSON 文件并替换模版变量\nexport function loadJsonWithEnv(_a) {\n var _b, _c, _d, _e, _f;\n var platform = _a.platform, arch = _a.arch;\n var configFilePath = path.join('.', 'rop.json');\n var configData = fs.readFileSync(configFilePath, 'utf8');\n var inputConfig = JSON.parse(configData);\n var _arch = arch !== null && arch !== void 0 ? arch : 'universal';\n if (arch == 'x86_64') {\n _arch = 'x64';\n }\n else if (arch == 'i386' || arch == 'i686') {\n _arch = 'x86';\n }\n else if (arch == 'aarch64') {\n _arch = 'arm64';\n }\n var env = {\n arch: _arch,\n };\n var config;\n if (!inputConfig.platforms && ((_b = inputConfig.framework) === null || _b === void 0 ? void 0 : _b.name) && frameworkList.includes((_c = inputConfig.framework) === null || _c === void 0 ? void 0 : _c.name)) {\n var framework = inputConfig.framework.name;\n var defaultPlatformConfig = platformDefaultConfigMap[framework];\n var _config = __assign(__assign({}, inputConfig), { platforms: defaultPlatformConfig });\n config = _config;\n }\n else {\n config = inputConfig;\n }\n if (!config.platforms || Object.keys(config.platforms).length == 0) {\n console.log(colors.red('The platforms property in rop.json cannot be empty.'));\n return;\n }\n var _autoEnv = getAutoEnvByFramework((_d = config === null || config === void 0 ? void 0 : config.framework) === null || _d === void 0 ? void 0 : _d.name, config.projectPath);\n env = __assign(__assign(__assign({}, env), (_autoEnv !== null && _autoEnv !== void 0 ? _autoEnv : {})), ((_f = (_e = config.framework) === null || _e === void 0 ? void 0 : _e.env) !== null && _f !== void 0 ? _f : {}));\n // 确保配置文件中存在 host 属性\n if (!env.version) {\n console.log(colors.red('The version property in rop.json cannot be empty.'));\n return;\n }\n // 递归函数来替换对象中的字符串值\n function replaceEnvInObject(obj) {\n Object.keys(obj).forEach(function (key) {\n if (typeof obj[key] === 'string') {\n // 使用正则表达式替换模版变量(这里假设模版变量是 ${VAR} 格式的)\n // @ts-ignore\n obj[key] = obj[key].replace(/\\$\\{(\\w+)\\}/g, function (_, envVar) { return env[envVar] || ''; });\n }\n else if (typeof obj[key] === 'object' && obj[key] !== null) {\n replaceEnvInObject(obj[key]); // 递归处理嵌套对象\n }\n });\n }\n replaceEnvInObject(config);\n var targetInfos = getTargetInfo(config.platforms, platform, _arch);\n console.log(colors.cyan(\"find target file:\"));\n console.log(\"\".concat(JSON.stringify(targetInfos)));\n return { config: config, targetInfos: targetInfos, version: env.version, arch: _arch };\n}\nexport var loadConfigJSON = function () {\n var configFilePath = path.join('.rop', 'config.json');\n if (!fs.existsSync(configFilePath)) {\n return {\n projectId: undefined,\n };\n }\n var configDataStr = fs.readFileSync(configFilePath, 'utf8');\n var configData = JSON.parse(configDataStr);\n return {\n projectId: configData.projectId,\n accessKey: configData.accessKey,\n };\n};\nexport var getAutoEnvByFramework = function (framework, projectPath) {\n if (!framework) {\n return undefined;\n }\n switch (framework.toLowerCase()) {\n case Framework.TAURI:\n return getTauriEnv(projectPath);\n case Framework.FLUTTER:\n return getFlutterEnv(projectPath);\n case Framework.IONIC:\n return getIonicEnv(projectPath);\n default:\n return undefined;\n }\n};\nexport var getTargetInfo = function (platforms, platform, arch) {\n var list = platforms[platform];\n if (list && list.length > 0) {\n var targetList = list.filter(function (item) { return item.arch == arch; });\n if (targetList.length > 0) {\n return targetList;\n }\n }\n throw new Error('Not find artifacts file');\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport fs from 'fs';\nimport fetch from 'node-fetch';\nimport FormData from 'form-data';\nimport cliProgress from 'cli-progress';\nimport colors from 'ansi-colors';\nimport path from 'path';\nimport { getBranch } from './utils';\nvar RopUploadApi = /** @class */ (function () {\n function RopUploadApi(_a) {\n var baseDomain = _a.baseDomain;\n var _this = this;\n this.checkParams = function (config) { return __awaiter(_this, void 0, void 0, function () {\n var branch, _a;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (!config.accessKey) {\n if (!config.token) {\n console.log(colors.red(\"Either accessKey or token must be used\"));\n return [2 /*return*/, false];\n }\n if (!config.teamSign) {\n console.log(colors.red(\"Either accessKey or teamSign must be used\"));\n return [2 /*return*/, false];\n }\n if (!config.projectId) {\n console.log(colors.red(\"projectId cannot be empty\"));\n return [2 /*return*/, false];\n }\n }\n if (!((_b = config.branch) !== null && _b !== void 0)) return [3 /*break*/, 1];\n _a = _b;\n return [3 /*break*/, 3];\n case 1: return [4 /*yield*/, getBranch()];\n case 2:\n _a = (_c.sent());\n _c.label = 3;\n case 3:\n branch = _a;\n if (!branch) {\n console.log(colors.red(\"branch cannot be empty\"));\n return [2 /*return*/, false];\n }\n else {\n config.branch = branch;\n }\n if (!config.platform) {\n console.log(colors.red(\"platform cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!config.arch) {\n console.log(colors.red(\"arch cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!config.targetPath) {\n console.log(colors.red(\"target path cannot be empty\"));\n return [2 /*return*/, false];\n }\n if (!fs.existsSync(config.targetPath)) {\n console.log(colors.red(\"target file not found, file path: \".concat(config.targetPath)));\n return [2 /*return*/, false];\n }\n // 如果更新包不存在的情况使用本身的包\n if (config.updatePath && !fs.existsSync(config.updatePath)) {\n config.updatePath = config.targetPath;\n config.updateName = config.targetName;\n }\n if (!config.version) {\n console.log(colors.red(\"version cannot be empty\"));\n return [2 /*return*/, false];\n }\n return [2 /*return*/, config];\n }\n });\n }); };\n this.baseDomain = baseDomain;\n }\n RopUploadApi.prototype.upload = function (_config) {\n return __awaiter(this, void 0, void 0, function () {\n var config, formData, fileStream, multibar, bar1, totalUploaded, updateFileStream, bar2_1, totalUpdateUploaded_1, res, body;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4 /*yield*/, this.checkParams(_config)];\n case 1:\n config = _c.sent();\n if (!config) {\n process.exit(1);\n }\n formData = new FormData();\n fileStream = fs.createReadStream(config.targetPath);\n multibar = new cliProgress.MultiBar({\n format: 'Upload Progress |' + colors.cyan('{bar}') + '| {percentage}% | {filename}',\n barCompleteChar: '\\u2588',\n barIncompleteChar: '\\u2591',\n hideCursor: true,\n });\n bar1 = multibar.create(fs.statSync(config.targetPath).size, 0);\n totalUploaded = 0;\n fileStream.on('data', function (chunk) {\n totalUploaded += chunk.length;\n bar1.update(totalUploaded, { filename: path.basename(config.targetPath) });\n });\n formData.append('targetFile', fileStream, {\n filename: (_a = config.targetName) !== null && _a !== void 0 ? _a : path.basename(config.targetPath),\n });\n if (config.updatePath) {\n bar2_1 = multibar.create(fs.statSync(config.updatePath).size, 0);\n updateFileStream = fs.createReadStream(config.updatePath);\n totalUpdateUploaded_1 = 0;\n updateFileStream.on('data', function (chunk) {\n totalUpdateUploaded_1 += chunk.length;\n bar2_1.update(totalUpdateUploaded_1, { filename: path.basename(config.updatePath) });\n });\n formData.append('updateFile', updateFileStream, {\n filename: (_b = config.updateName) !== null && _b !== void 0 ? _b : path.basename(config.updatePath),\n });\n }\n if (config.accessKey) {\n formData.append('accessKey', config.accessKey);\n }\n if (config.projectId) {\n formData.append('projectId', config.projectId);\n }\n if (config.token) {\n formData.append('token', config.token);\n }\n formData.append('branch', config.branch);\n formData.append('version', config.version);\n formData.append('platform', config.platform);\n formData.append('arch', config.arch);\n if (config.signature) {\n formData.append('signature', config.signature);\n }\n if (config.autoRelease) {\n formData.append('autoRelease', String(config.autoRelease));\n }\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain, \"/api/upload\"), {\n method: 'POST',\n headers: formData.getHeaders(),\n body: formData,\n })];\n case 2:\n res = _c.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n body = _c.sent();\n if (!res.ok) {\n console.log(res.status, res.statusText, body);\n process.exit(1);\n }\n else {\n // console.log('上传成功!');\n }\n multibar.stop();\n fileStream.destroy();\n updateFileStream === null || updateFileStream === void 0 ? void 0 : updateFileStream.destroy();\n console.log(colors.green(\"Upload success!\"));\n return [2 /*return*/, { success: res.ok, body: body }];\n }\n });\n });\n };\n return RopUploadApi;\n}());\nexport { RopUploadApi };\n","import { __awaiter, __generator } from \"tslib\";\nimport { confirm } from '@inquirer/prompts';\nimport colors from 'ansi-colors';\nimport path from 'node:path';\nimport fs from 'node:fs';\nvar InitApi = /** @class */ (function () {\n function InitApi() {\n }\n InitApi.prototype.initProjectConfigJson = function (framework) {\n return __awaiter(this, void 0, void 0, function () {\n var jsonConfigPath, jsonConfigData, flag, str;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n jsonConfigPath = path.join('.', 'rop.json');\n if (!fs.existsSync(jsonConfigPath)) return [3 /*break*/, 2];\n return [4 /*yield*/, confirm({\n message: \"\".concat(colors.cyan('rop.json'), \" already exists, does it need to be overwritten?\"),\n })];\n case 1:\n flag = _a.sent();\n if (!flag) {\n return [2 /*return*/, false];\n }\n str = fs.readFileSync(jsonConfigPath, 'utf8');\n jsonConfigData = JSON.parse(str);\n if (!jsonConfigData.framework) {\n jsonConfigData.framework = {\n name: framework,\n };\n }\n else {\n jsonConfigData.framework.name = framework;\n }\n return [3 /*break*/, 3];\n case 2:\n jsonConfigData = {\n framework: {\n name: framework,\n },\n };\n _a.label = 3;\n case 3:\n fs.writeFileSync(jsonConfigPath, JSON.stringify(jsonConfigData, null, 2), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n InitApi.prototype.initRopConfig = function (projectId, accessKey) {\n return __awaiter(this, void 0, void 0, function () {\n var ropConfigDirPath, ropConfigPath, ropConfigData;\n return __generator(this, function (_a) {\n ropConfigDirPath = path.join('.', '.rop');\n if (!fs.existsSync(ropConfigDirPath)) {\n fs.mkdirSync(ropConfigDirPath);\n }\n ropConfigPath = path.join(ropConfigDirPath, 'config.json');\n ropConfigData = {};\n if (fs.existsSync(ropConfigPath)) {\n ropConfigData = JSON.parse(fs.readFileSync(ropConfigPath, 'utf8'));\n }\n ropConfigData.projectId = projectId;\n if (accessKey) {\n ropConfigData.accessKey = accessKey;\n }\n fs.writeFileSync(ropConfigPath, JSON.stringify(ropConfigData, null, 2), 'utf8');\n return [2 /*return*/];\n });\n });\n };\n InitApi.prototype.initGitignore = function () {\n return __awaiter(this, void 0, void 0, function () {\n var gitignorePath, gitignoreData;\n return __generator(this, function (_a) {\n gitignorePath = path.join('.', '.gitignore');\n if (fs.existsSync(gitignorePath)) {\n gitignoreData = fs.readFileSync(gitignorePath, 'utf8');\n if (!gitignoreData.includes('.rop')) {\n fs.appendFileSync(gitignorePath, \"\\n.rop\", 'utf8');\n }\n }\n else {\n fs.writeFileSync(gitignorePath, \".rop\", 'utf8');\n }\n return [2 /*return*/];\n });\n });\n };\n return InitApi;\n}());\nexport { InitApi };\n","import path from 'node:path';\nimport fs from 'node:fs';\nexport var defaultHost = 'http://dev.api.rop.coolcatapp.com';\nexport var getHost = function () {\n var configFilePath = path.join('.rop', 'config.json');\n if (fs.existsSync(configFilePath)) {\n var config = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));\n if (config.host) {\n return config.host;\n }\n }\n return defaultHost;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport fs from 'fs';\nimport * as os from 'node:os';\nimport path from 'node:path';\nimport { defaultHost } from './config';\nimport colors from 'ansi-colors';\nvar LOGIN_API = '/api/auth/login';\nvar REFRESH_TOKEN_API = '/api/auth/refresh';\nvar CHECK_AND_REFRESH_TOKEN_API = '/api/auth/checkAndRefresh';\nvar AuthApi = /** @class */ (function () {\n function AuthApi(_a) {\n var baseDomain = _a.baseDomain;\n this.baseDomain = baseDomain !== null && baseDomain !== void 0 ? baseDomain : defaultHost;\n }\n AuthApi.prototype.login = function (req) {\n return __awaiter(this, void 0, void 0, function () {\n var res, resBody, homedir, userFilePath;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(LOGIN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(req),\n })];\n case 1:\n res = _b.sent();\n return [4 /*yield*/, res.json()];\n case 2:\n resBody = _b.sent();\n if (!res.ok || !resBody.data) {\n console.log(colors.red(\"Login failed: status:\".concat(res.status, \", message:\").concat((_a = resBody.message) !== null && _a !== void 0 ? _a : res.statusText)));\n return [2 /*return*/, false];\n }\n homedir = path.join(os.homedir(), '.rop');\n if (!fs.existsSync(homedir)) {\n fs.mkdirSync(homedir);\n }\n userFilePath = path.join(homedir, 'user');\n fs.writeFileSync(userFilePath, JSON.stringify(resBody.data, null, 2), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n AuthApi.prototype.refreshToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var homedir, userFilePath, user, res, resBody;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n console.log(colors.red(\"No permission! Please execute [rop login] or use --accessKey\"));\n return [2 /*return*/, false];\n }\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(REFRESH_TOKEN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify({ token: user.auth.refreshToken }),\n })];\n case 1:\n res = _a.sent();\n return [4 /*yield*/, res.json()];\n case 2:\n resBody = _a.sent();\n if (!res.ok || !resBody.data) {\n if (!resBody.message || res.status != 400) {\n console.log(colors.red(\"Refresh token failed: status:\".concat(res.status, \", statusText:\").concat(res.statusText)));\n }\n else {\n console.log(colors.red(\"Authorization expired please execute the login command\"));\n fs.rmSync(userFilePath);\n }\n return [2 /*return*/, false];\n }\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return [2 /*return*/, true];\n }\n });\n });\n };\n AuthApi.prototype.getToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var homedir, userFilePath;\n return __generator(this, function (_a) {\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n return [2 /*return*/, undefined];\n }\n return [2 /*return*/, JSON.parse(fs.readFileSync(userFilePath, 'utf8'))];\n });\n });\n };\n AuthApi.prototype.checkAndRefreshToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n var user, res, resBody, homedir, userFilePath;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.getToken()];\n case 1:\n user = _a.sent();\n if (!user) {\n return [2 /*return*/, undefined];\n }\n return [4 /*yield*/, fetch(\"\".concat(this.baseDomain).concat(CHECK_AND_REFRESH_TOKEN_API), {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(user.auth),\n })];\n case 2:\n res = _a.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n resBody = _a.sent();\n if (!res.ok || !resBody.data) {\n return [2 /*return*/, undefined];\n }\n homedir = path.join(os.homedir(), '.rop');\n userFilePath = path.join(homedir, 'user');\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return [2 /*return*/, user];\n }\n });\n });\n };\n AuthApi.prototype.request = function (req) {\n return __awaiter(this, void 0, void 0, function () {\n var user, res, resBody, _a, result;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.getToken()];\n case 1:\n user = _b.sent();\n if (!user) {\n console.log(colors.red(\"No permission! Please execute [rop login]\"));\n return [2 /*return*/, undefined];\n }\n return [4 /*yield*/, req(user.auth.accessToken)];\n case 2:\n res = _b.sent();\n return [4 /*yield*/, res.json()];\n case 3:\n resBody = _b.sent();\n if (!(!res.ok || !resBody.data)) return [3 /*break*/, 11];\n _a = res.status;\n switch (_a) {\n case 400: return [3 /*break*/, 4];\n case 401: return [3 /*break*/, 5];\n }\n return [3 /*break*/, 9];\n case 4:\n console.log(JSON.stringify(resBody));\n return [3 /*break*/, 10];\n case 5: return [4 /*yield*/, this.refreshToken()];\n case 6:\n result = _b.sent();\n if (!result) return [3 /*break*/, 8];\n return [4 /*yield*/, this.request(req)];\n case 7: return [2 /*return*/, _b.sent()];\n case 8: return [3 /*break*/, 10];\n case 9:\n console.log(colors.red(\"request failed: status:\".concat(res.status, \", statusText:\").concat(res.statusText)));\n _b.label = 10;\n case 10: return [2 /*return*/, undefined];\n case 11: return [2 /*return*/, resBody.data];\n }\n });\n });\n };\n return AuthApi;\n}());\nexport { AuthApi };\n"],"names":["Framework","exec","fetch","path","fs","confirm","os"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/esm/index.js CHANGED
@@ -78,6 +78,10 @@ class RopUploadApi {
78
78
  console.log(colors.red(`Either accessKey or token must be used`));
79
79
  return false;
80
80
  }
81
+ if (!config.teamSign) {
82
+ console.log(colors.red(`Either accessKey or teamSign must be used`));
83
+ return false;
84
+ }
81
85
  if (!config.projectId) {
82
86
  console.log(colors.red(`projectId cannot be empty`));
83
87
  return false;
@@ -125,7 +129,7 @@ class RopUploadApi {
125
129
  var _a, _b;
126
130
  const config = yield this.checkParams(_config);
127
131
  if (!config) {
128
- return;
132
+ process.exit(1);
129
133
  }
130
134
  // 以下代码帮我改成 上传文件 fetch 上传文件
131
135
  const formData = new FormData();
@@ -186,6 +190,7 @@ class RopUploadApi {
186
190
  const body = yield res.json();
187
191
  if (!res.ok) {
188
192
  console.log(res.status, res.statusText, body);
193
+ process.exit(1);
189
194
  }
190
195
  multibar.stop();
191
196
  fileStream.destroy();
@@ -264,7 +269,7 @@ class InitApi {
264
269
  }
265
270
  }
266
271
 
267
- const defaultHost = 'https://rop.xh920.com';
272
+ const defaultHost = 'http://dev.api.rop.coolcatapp.com';
268
273
 
269
274
  const LOGIN_API = '/api/auth/login';
270
275
  const REFRESH_TOKEN_API = '/api/auth/refresh';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@rollup+plugin-typescript@11.1.6_rollup@4.19.1_tslib@2.6.3_typescript@5.4.5/node_modules/tslib/tslib.es6.js","../../src/types.ts","../../src/utils.ts","../../src/uploadApi.ts","../../src/initApi.ts","../../src/config.ts","../../src/authApi.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export const frameworkList = ['tauri', 'ionic', 'flutter'];\nexport var Framework;\n(function (Framework) {\n Framework[\"TAURI\"] = \"tauri\";\n Framework[\"IONIC\"] = \"ionic\";\n Framework[\"FLUTTER\"] = \"flutter\";\n})(Framework || (Framework = {}));\n","import { __awaiter } from \"tslib\";\nimport { exec } from 'child_process';\nimport path from 'node:path';\nimport fs from 'node:fs';\nimport { Framework, frameworkList, } from './types';\nimport { getTauriEnv } from './tauri';\nimport platformDefaultConfigMap from './default-platform.json';\nimport { getFlutterEnv } from './flutter';\nimport { getIonicEnv } from './ionic';\nimport colors from 'ansi-colors';\nexport const getBranch = () => __awaiter(void 0, void 0, void 0, function* () {\n return new Promise((resolve) => {\n return exec('git rev-parse --abbrev-ref HEAD', (err, stdout, stderr) => {\n if (err) {\n console.log(`getBranch Error: ${err}`);\n }\n else if (stdout) {\n resolve(stdout.trim());\n return;\n }\n resolve('none');\n });\n });\n});\n// 读取 JSON 文件并替换模版变量\nexport function loadJsonWithEnv({ platform, arch }) {\n var _a, _b, _c, _d, _e;\n const configFilePath = path.join('.', 'rop.json');\n const configData = fs.readFileSync(configFilePath, 'utf8');\n const inputConfig = JSON.parse(configData);\n let _arch = arch !== null && arch !== void 0 ? arch : 'universal';\n if (arch == 'x86_64') {\n _arch = 'x64';\n }\n else if (arch == 'i386' || arch == 'i686') {\n _arch = 'x86';\n }\n else if (arch == 'aarch64') {\n _arch = 'arm64';\n }\n let env = {\n arch: _arch,\n };\n let config;\n if (!inputConfig.platforms && ((_a = inputConfig.framework) === null || _a === void 0 ? void 0 : _a.name) && frameworkList.includes((_b = inputConfig.framework) === null || _b === void 0 ? void 0 : _b.name)) {\n const framework = inputConfig.framework.name;\n const defaultPlatformConfig = platformDefaultConfigMap[framework];\n const _config = Object.assign(Object.assign({}, inputConfig), { platforms: defaultPlatformConfig });\n config = _config;\n }\n else {\n config = inputConfig;\n }\n if (!config.platforms || Object.keys(config.platforms).length == 0) {\n console.log(colors.red('The platforms property in rop.json cannot be empty.'));\n return;\n }\n const _autoEnv = getAutoEnvByFramework((_c = config === null || config === void 0 ? void 0 : config.framework) === null || _c === void 0 ? void 0 : _c.name, config.projectPath);\n env = Object.assign(Object.assign(Object.assign({}, env), (_autoEnv !== null && _autoEnv !== void 0 ? _autoEnv : {})), ((_e = (_d = config.framework) === null || _d === void 0 ? void 0 : _d.env) !== null && _e !== void 0 ? _e : {}));\n // 确保配置文件中存在 host 属性\n if (!env.version) {\n console.log(colors.red('The version property in rop.json cannot be empty.'));\n return;\n }\n // 递归函数来替换对象中的字符串值\n function replaceEnvInObject(obj) {\n Object.keys(obj).forEach((key) => {\n if (typeof obj[key] === 'string') {\n // 使用正则表达式替换模版变量(这里假设模版变量是 ${VAR} 格式的)\n // @ts-ignore\n obj[key] = obj[key].replace(/\\$\\{(\\w+)\\}/g, (_, envVar) => env[envVar] || '');\n }\n else if (typeof obj[key] === 'object' && obj[key] !== null) {\n replaceEnvInObject(obj[key]); // 递归处理嵌套对象\n }\n });\n }\n replaceEnvInObject(config);\n const targetInfos = getTargetInfo(config.platforms, platform, _arch);\n console.log(colors.cyan(`find target file:`));\n console.log(`${JSON.stringify(targetInfos)}`);\n return { config, targetInfos, version: env.version, arch: _arch };\n}\nexport const loadConfigJSON = () => {\n const configFilePath = path.join('.rop', 'config.json');\n if (!fs.existsSync(configFilePath)) {\n return {\n projectId: undefined,\n };\n }\n const configDataStr = fs.readFileSync(configFilePath, 'utf8');\n const configData = JSON.parse(configDataStr);\n return {\n projectId: configData.projectId,\n accessKey: configData.accessKey,\n };\n};\nexport const getAutoEnvByFramework = (framework, projectPath) => {\n if (!framework) {\n return undefined;\n }\n switch (framework.toLowerCase()) {\n case Framework.TAURI:\n return getTauriEnv(projectPath);\n case Framework.FLUTTER:\n return getFlutterEnv(projectPath);\n case Framework.IONIC:\n return getIonicEnv(projectPath);\n default:\n return undefined;\n }\n};\nexport const getTargetInfo = (platforms, platform, arch) => {\n const list = platforms[platform];\n if (list && list.length > 0) {\n const targetList = list.filter((item) => item.arch == arch);\n if (targetList.length > 0) {\n return targetList;\n }\n }\n throw new Error('Not find artifacts file');\n};\n","import { __awaiter } from \"tslib\";\nimport fs from 'fs';\nimport fetch from 'node-fetch';\nimport FormData from 'form-data';\nimport cliProgress from 'cli-progress';\nimport colors from 'ansi-colors';\nimport path from 'path';\nimport { getBranch } from './utils';\nexport class RopUploadApi {\n constructor({ baseDomain }) {\n this.checkParams = (config) => __awaiter(this, void 0, void 0, function* () {\n var _a;\n if (!config.accessKey) {\n if (!config.token) {\n console.log(colors.red(`Either accessKey or token must be used`));\n return false;\n }\n if (!config.projectId) {\n console.log(colors.red(`projectId cannot be empty`));\n return false;\n }\n }\n const branch = (_a = config.branch) !== null && _a !== void 0 ? _a : (yield getBranch());\n if (!branch) {\n console.log(colors.red(`branch cannot be empty`));\n return false;\n }\n else {\n config.branch = branch;\n }\n if (!config.platform) {\n console.log(colors.red(`platform cannot be empty`));\n return false;\n }\n if (!config.arch) {\n console.log(colors.red(`arch cannot be empty`));\n return false;\n }\n if (!config.targetPath) {\n console.log(colors.red(`target path cannot be empty`));\n return false;\n }\n if (!fs.existsSync(config.targetPath)) {\n console.log(colors.red(`target file not found, file path: ${config.targetPath}`));\n return false;\n }\n // 如果更新包不存在的情况使用本身的包\n if (config.updatePath && !fs.existsSync(config.updatePath)) {\n config.updatePath = config.targetPath;\n config.updateName = config.targetName;\n }\n if (!config.version) {\n console.log(colors.red(`version cannot be empty`));\n return false;\n }\n return config;\n });\n this.baseDomain = baseDomain;\n }\n upload(_config) {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b;\n const config = yield this.checkParams(_config);\n if (!config) {\n return;\n }\n // 以下代码帮我改成 上传文件 fetch 上传文件\n const formData = new FormData();\n const fileStream = fs.createReadStream(config.targetPath);\n // 监听文件流的 'data' 事件来跟踪进度\n const multibar = new cliProgress.MultiBar({\n format: 'Upload Progress |' + colors.cyan('{bar}') + '| {percentage}% | {filename}',\n barCompleteChar: '\\u2588',\n barIncompleteChar: '\\u2591',\n hideCursor: true,\n });\n const bar1 = multibar.create(fs.statSync(config.targetPath).size, 0);\n let totalUploaded = 0;\n fileStream.on('data', (chunk) => {\n totalUploaded += chunk.length;\n bar1.update(totalUploaded, { filename: path.basename(config.targetPath) });\n });\n formData.append('targetFile', fileStream, {\n filename: (_a = config.targetName) !== null && _a !== void 0 ? _a : path.basename(config.targetPath),\n });\n let updateFileStream;\n if (config.updatePath) {\n const bar2 = multibar.create(fs.statSync(config.updatePath).size, 0);\n updateFileStream = fs.createReadStream(config.updatePath);\n let totalUpdateUploaded = 0;\n updateFileStream.on('data', (chunk) => {\n totalUpdateUploaded += chunk.length;\n bar2.update(totalUpdateUploaded, { filename: path.basename(config.updatePath) });\n });\n formData.append('updateFile', updateFileStream, {\n filename: (_b = config.updateName) !== null && _b !== void 0 ? _b : path.basename(config.updatePath),\n });\n }\n if (config.accessKey) {\n formData.append('accessKey', config.accessKey);\n }\n if (config.projectId) {\n formData.append('projectId', config.projectId);\n }\n if (config.token) {\n formData.append('token', config.token);\n }\n formData.append('branch', config.branch);\n formData.append('version', config.version);\n formData.append('platform', config.platform);\n formData.append('arch', config.arch);\n if (config.signature) {\n formData.append('signature', config.signature);\n }\n if (config.autoRelease) {\n formData.append('autoRelease', String(config.autoRelease));\n }\n const res = yield fetch(`${this.baseDomain}/api/upload`, {\n method: 'POST',\n headers: formData.getHeaders(),\n body: formData,\n });\n const body = yield res.json();\n if (!res.ok) {\n console.log(res.status, res.statusText, body);\n }\n else {\n // console.log('上传成功!');\n }\n multibar.stop();\n fileStream.destroy();\n updateFileStream === null || updateFileStream === void 0 ? void 0 : updateFileStream.destroy();\n console.log(colors.green(`Upload success!`));\n return { success: res.ok, body };\n });\n }\n}\n","import { __awaiter } from \"tslib\";\nimport { confirm } from '@inquirer/prompts';\nimport colors from 'ansi-colors';\nimport path from 'node:path';\nimport fs from 'node:fs';\nexport class InitApi {\n initProjectConfigJson(framework) {\n return __awaiter(this, void 0, void 0, function* () {\n const jsonConfigPath = path.join('.', 'rop.json');\n let jsonConfigData;\n if (fs.existsSync(jsonConfigPath)) {\n const flag = yield confirm({\n message: `${colors.cyan('rop.json')} already exists, does it need to be overwritten?`,\n });\n if (!flag) {\n return false;\n }\n const str = fs.readFileSync(jsonConfigPath, 'utf8');\n jsonConfigData = JSON.parse(str);\n if (!jsonConfigData.framework) {\n jsonConfigData.framework = {\n name: framework,\n };\n }\n else {\n jsonConfigData.framework.name = framework;\n }\n }\n else {\n jsonConfigData = {\n framework: {\n name: framework,\n },\n };\n }\n fs.writeFileSync(jsonConfigPath, JSON.stringify(jsonConfigData, null, 2), 'utf8');\n return true;\n });\n }\n initRopConfig(projectId, accessKey) {\n return __awaiter(this, void 0, void 0, function* () {\n const ropConfigDirPath = path.join('.', '.rop');\n if (!fs.existsSync(ropConfigDirPath)) {\n fs.mkdirSync(ropConfigDirPath);\n }\n const ropConfigPath = path.join(ropConfigDirPath, 'config.json');\n let ropConfigData = {};\n if (fs.existsSync(ropConfigPath)) {\n ropConfigData = JSON.parse(fs.readFileSync(ropConfigPath, 'utf8'));\n }\n ropConfigData.projectId = projectId;\n if (accessKey) {\n ropConfigData.accessKey = accessKey;\n }\n fs.writeFileSync(ropConfigPath, JSON.stringify(ropConfigData, null, 2), 'utf8');\n });\n }\n initGitignore() {\n return __awaiter(this, void 0, void 0, function* () {\n const gitignorePath = path.join('.', '.gitignore');\n if (fs.existsSync(gitignorePath)) {\n const gitignoreData = fs.readFileSync(gitignorePath, 'utf8');\n if (!gitignoreData.includes('.rop')) {\n fs.appendFileSync(gitignorePath, `\\n.rop`, 'utf8');\n }\n }\n else {\n fs.writeFileSync(gitignorePath, `.rop`, 'utf8');\n }\n });\n }\n}\n","import path from 'node:path';\nimport fs from 'node:fs';\nexport const defaultHost = 'https://rop.xh920.com';\nexport const getHost = () => {\n const configFilePath = path.join('.rop', 'config.json');\n if (fs.existsSync(configFilePath)) {\n const config = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));\n if (config.host) {\n return config.host;\n }\n }\n return defaultHost;\n};\n","import { __awaiter } from \"tslib\";\nimport fs from 'fs';\nimport * as os from 'node:os';\nimport path from 'node:path';\nimport { defaultHost } from './config';\nimport colors from 'ansi-colors';\nconst LOGIN_API = '/api/auth/login';\nconst REFRESH_TOKEN_API = '/api/auth/refresh';\nconst CHECK_AND_REFRESH_TOKEN_API = '/api/auth/checkAndRefresh';\nexport class AuthApi {\n constructor({ baseDomain }) {\n this.baseDomain = baseDomain !== null && baseDomain !== void 0 ? baseDomain : defaultHost;\n }\n login(req) {\n return __awaiter(this, void 0, void 0, function* () {\n var _a;\n const res = yield fetch(`${this.baseDomain}${LOGIN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(req),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n console.log(colors.red(`Login failed: status:${res.status}, message:${(_a = resBody.message) !== null && _a !== void 0 ? _a : res.statusText}`));\n return false;\n }\n const homedir = path.join(os.homedir(), '.rop');\n if (!fs.existsSync(homedir)) {\n fs.mkdirSync(homedir);\n }\n const userFilePath = path.join(homedir, 'user');\n fs.writeFileSync(userFilePath, JSON.stringify(resBody.data, null, 2), 'utf8');\n return true;\n });\n }\n refreshToken() {\n return __awaiter(this, void 0, void 0, function* () {\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n console.log(colors.red(`No permission! Please execute [rop login] or use --accessKey`));\n return false;\n }\n const user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n const res = yield fetch(`${this.baseDomain}${REFRESH_TOKEN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify({ token: user.auth.refreshToken }),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n if (!resBody.message || res.status != 400) {\n console.log(colors.red(`Refresh token failed: status:${res.status}, statusText:${res.statusText}`));\n }\n else {\n console.log(colors.red(`Authorization expired please execute the login command`));\n fs.rmSync(userFilePath);\n }\n return false;\n }\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return true;\n });\n }\n getToken() {\n return __awaiter(this, void 0, void 0, function* () {\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n return undefined;\n }\n return JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n });\n }\n checkAndRefreshToken() {\n return __awaiter(this, void 0, void 0, function* () {\n let user = yield this.getToken();\n if (!user) {\n return undefined;\n }\n const res = yield fetch(`${this.baseDomain}${CHECK_AND_REFRESH_TOKEN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(user.auth),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n return undefined;\n }\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return user;\n });\n }\n request(req) {\n return __awaiter(this, void 0, void 0, function* () {\n let user = yield this.getToken();\n if (!user) {\n console.log(colors.red(`No permission! Please execute [rop login]`));\n return undefined;\n }\n const res = yield req(user.auth.accessToken);\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n switch (res.status) {\n case 400:\n console.log(JSON.stringify(resBody));\n break;\n case 401:\n const result = yield this.refreshToken();\n if (result) {\n return yield this.request(req);\n }\n break;\n default:\n console.log(colors.red(`request failed: status:${res.status}, statusText:${res.statusText}`));\n }\n return undefined;\n }\n return resBody.data;\n });\n }\n}\n"],"names":["fetch","path","fs"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@rollup+plugin-typescript@11.1.6_rollup@4.19.1_tslib@2.6.3_typescript@5.4.5/node_modules/tslib/tslib.es6.js","../../src/types.ts","../../src/utils.ts","../../src/uploadApi.ts","../../src/initApi.ts","../../src/config.ts","../../src/authApi.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export const frameworkList = ['tauri', 'ionic', 'flutter'];\nexport var Framework;\n(function (Framework) {\n Framework[\"TAURI\"] = \"tauri\";\n Framework[\"IONIC\"] = \"ionic\";\n Framework[\"FLUTTER\"] = \"flutter\";\n})(Framework || (Framework = {}));\n","import { __awaiter } from \"tslib\";\nimport { exec } from 'child_process';\nimport path from 'node:path';\nimport fs from 'node:fs';\nimport { Framework, frameworkList, } from './types';\nimport { getTauriEnv } from './tauri';\nimport platformDefaultConfigMap from './default-platform.json';\nimport { getFlutterEnv } from './flutter';\nimport { getIonicEnv } from './ionic';\nimport colors from 'ansi-colors';\nexport const getBranch = () => __awaiter(void 0, void 0, void 0, function* () {\n return new Promise((resolve) => {\n return exec('git rev-parse --abbrev-ref HEAD', (err, stdout, stderr) => {\n if (err) {\n console.log(`getBranch Error: ${err}`);\n }\n else if (stdout) {\n resolve(stdout.trim());\n return;\n }\n resolve('none');\n });\n });\n});\n// 读取 JSON 文件并替换模版变量\nexport function loadJsonWithEnv({ platform, arch }) {\n var _a, _b, _c, _d, _e;\n const configFilePath = path.join('.', 'rop.json');\n const configData = fs.readFileSync(configFilePath, 'utf8');\n const inputConfig = JSON.parse(configData);\n let _arch = arch !== null && arch !== void 0 ? arch : 'universal';\n if (arch == 'x86_64') {\n _arch = 'x64';\n }\n else if (arch == 'i386' || arch == 'i686') {\n _arch = 'x86';\n }\n else if (arch == 'aarch64') {\n _arch = 'arm64';\n }\n let env = {\n arch: _arch,\n };\n let config;\n if (!inputConfig.platforms && ((_a = inputConfig.framework) === null || _a === void 0 ? void 0 : _a.name) && frameworkList.includes((_b = inputConfig.framework) === null || _b === void 0 ? void 0 : _b.name)) {\n const framework = inputConfig.framework.name;\n const defaultPlatformConfig = platformDefaultConfigMap[framework];\n const _config = Object.assign(Object.assign({}, inputConfig), { platforms: defaultPlatformConfig });\n config = _config;\n }\n else {\n config = inputConfig;\n }\n if (!config.platforms || Object.keys(config.platforms).length == 0) {\n console.log(colors.red('The platforms property in rop.json cannot be empty.'));\n return;\n }\n const _autoEnv = getAutoEnvByFramework((_c = config === null || config === void 0 ? void 0 : config.framework) === null || _c === void 0 ? void 0 : _c.name, config.projectPath);\n env = Object.assign(Object.assign(Object.assign({}, env), (_autoEnv !== null && _autoEnv !== void 0 ? _autoEnv : {})), ((_e = (_d = config.framework) === null || _d === void 0 ? void 0 : _d.env) !== null && _e !== void 0 ? _e : {}));\n // 确保配置文件中存在 host 属性\n if (!env.version) {\n console.log(colors.red('The version property in rop.json cannot be empty.'));\n return;\n }\n // 递归函数来替换对象中的字符串值\n function replaceEnvInObject(obj) {\n Object.keys(obj).forEach((key) => {\n if (typeof obj[key] === 'string') {\n // 使用正则表达式替换模版变量(这里假设模版变量是 ${VAR} 格式的)\n // @ts-ignore\n obj[key] = obj[key].replace(/\\$\\{(\\w+)\\}/g, (_, envVar) => env[envVar] || '');\n }\n else if (typeof obj[key] === 'object' && obj[key] !== null) {\n replaceEnvInObject(obj[key]); // 递归处理嵌套对象\n }\n });\n }\n replaceEnvInObject(config);\n const targetInfos = getTargetInfo(config.platforms, platform, _arch);\n console.log(colors.cyan(`find target file:`));\n console.log(`${JSON.stringify(targetInfos)}`);\n return { config, targetInfos, version: env.version, arch: _arch };\n}\nexport const loadConfigJSON = () => {\n const configFilePath = path.join('.rop', 'config.json');\n if (!fs.existsSync(configFilePath)) {\n return {\n projectId: undefined,\n };\n }\n const configDataStr = fs.readFileSync(configFilePath, 'utf8');\n const configData = JSON.parse(configDataStr);\n return {\n projectId: configData.projectId,\n accessKey: configData.accessKey,\n };\n};\nexport const getAutoEnvByFramework = (framework, projectPath) => {\n if (!framework) {\n return undefined;\n }\n switch (framework.toLowerCase()) {\n case Framework.TAURI:\n return getTauriEnv(projectPath);\n case Framework.FLUTTER:\n return getFlutterEnv(projectPath);\n case Framework.IONIC:\n return getIonicEnv(projectPath);\n default:\n return undefined;\n }\n};\nexport const getTargetInfo = (platforms, platform, arch) => {\n const list = platforms[platform];\n if (list && list.length > 0) {\n const targetList = list.filter((item) => item.arch == arch);\n if (targetList.length > 0) {\n return targetList;\n }\n }\n throw new Error('Not find artifacts file');\n};\n","import { __awaiter } from \"tslib\";\nimport fs from 'fs';\nimport fetch from 'node-fetch';\nimport FormData from 'form-data';\nimport cliProgress from 'cli-progress';\nimport colors from 'ansi-colors';\nimport path from 'path';\nimport { getBranch } from './utils';\nexport class RopUploadApi {\n constructor({ baseDomain }) {\n this.checkParams = (config) => __awaiter(this, void 0, void 0, function* () {\n var _a;\n if (!config.accessKey) {\n if (!config.token) {\n console.log(colors.red(`Either accessKey or token must be used`));\n return false;\n }\n if (!config.teamSign) {\n console.log(colors.red(`Either accessKey or teamSign must be used`));\n return false;\n }\n if (!config.projectId) {\n console.log(colors.red(`projectId cannot be empty`));\n return false;\n }\n }\n const branch = (_a = config.branch) !== null && _a !== void 0 ? _a : (yield getBranch());\n if (!branch) {\n console.log(colors.red(`branch cannot be empty`));\n return false;\n }\n else {\n config.branch = branch;\n }\n if (!config.platform) {\n console.log(colors.red(`platform cannot be empty`));\n return false;\n }\n if (!config.arch) {\n console.log(colors.red(`arch cannot be empty`));\n return false;\n }\n if (!config.targetPath) {\n console.log(colors.red(`target path cannot be empty`));\n return false;\n }\n if (!fs.existsSync(config.targetPath)) {\n console.log(colors.red(`target file not found, file path: ${config.targetPath}`));\n return false;\n }\n // 如果更新包不存在的情况使用本身的包\n if (config.updatePath && !fs.existsSync(config.updatePath)) {\n config.updatePath = config.targetPath;\n config.updateName = config.targetName;\n }\n if (!config.version) {\n console.log(colors.red(`version cannot be empty`));\n return false;\n }\n return config;\n });\n this.baseDomain = baseDomain;\n }\n upload(_config) {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b;\n const config = yield this.checkParams(_config);\n if (!config) {\n process.exit(1);\n }\n // 以下代码帮我改成 上传文件 fetch 上传文件\n const formData = new FormData();\n const fileStream = fs.createReadStream(config.targetPath);\n // 监听文件流的 'data' 事件来跟踪进度\n const multibar = new cliProgress.MultiBar({\n format: 'Upload Progress |' + colors.cyan('{bar}') + '| {percentage}% | {filename}',\n barCompleteChar: '\\u2588',\n barIncompleteChar: '\\u2591',\n hideCursor: true,\n });\n const bar1 = multibar.create(fs.statSync(config.targetPath).size, 0);\n let totalUploaded = 0;\n fileStream.on('data', (chunk) => {\n totalUploaded += chunk.length;\n bar1.update(totalUploaded, { filename: path.basename(config.targetPath) });\n });\n formData.append('targetFile', fileStream, {\n filename: (_a = config.targetName) !== null && _a !== void 0 ? _a : path.basename(config.targetPath),\n });\n let updateFileStream;\n if (config.updatePath) {\n const bar2 = multibar.create(fs.statSync(config.updatePath).size, 0);\n updateFileStream = fs.createReadStream(config.updatePath);\n let totalUpdateUploaded = 0;\n updateFileStream.on('data', (chunk) => {\n totalUpdateUploaded += chunk.length;\n bar2.update(totalUpdateUploaded, { filename: path.basename(config.updatePath) });\n });\n formData.append('updateFile', updateFileStream, {\n filename: (_b = config.updateName) !== null && _b !== void 0 ? _b : path.basename(config.updatePath),\n });\n }\n if (config.accessKey) {\n formData.append('accessKey', config.accessKey);\n }\n if (config.projectId) {\n formData.append('projectId', config.projectId);\n }\n if (config.token) {\n formData.append('token', config.token);\n }\n formData.append('branch', config.branch);\n formData.append('version', config.version);\n formData.append('platform', config.platform);\n formData.append('arch', config.arch);\n if (config.signature) {\n formData.append('signature', config.signature);\n }\n if (config.autoRelease) {\n formData.append('autoRelease', String(config.autoRelease));\n }\n const res = yield fetch(`${this.baseDomain}/api/upload`, {\n method: 'POST',\n headers: formData.getHeaders(),\n body: formData,\n });\n const body = yield res.json();\n if (!res.ok) {\n console.log(res.status, res.statusText, body);\n process.exit(1);\n }\n else {\n // console.log('上传成功!');\n }\n multibar.stop();\n fileStream.destroy();\n updateFileStream === null || updateFileStream === void 0 ? void 0 : updateFileStream.destroy();\n console.log(colors.green(`Upload success!`));\n return { success: res.ok, body };\n });\n }\n}\n","import { __awaiter } from \"tslib\";\nimport { confirm } from '@inquirer/prompts';\nimport colors from 'ansi-colors';\nimport path from 'node:path';\nimport fs from 'node:fs';\nexport class InitApi {\n initProjectConfigJson(framework) {\n return __awaiter(this, void 0, void 0, function* () {\n const jsonConfigPath = path.join('.', 'rop.json');\n let jsonConfigData;\n if (fs.existsSync(jsonConfigPath)) {\n const flag = yield confirm({\n message: `${colors.cyan('rop.json')} already exists, does it need to be overwritten?`,\n });\n if (!flag) {\n return false;\n }\n const str = fs.readFileSync(jsonConfigPath, 'utf8');\n jsonConfigData = JSON.parse(str);\n if (!jsonConfigData.framework) {\n jsonConfigData.framework = {\n name: framework,\n };\n }\n else {\n jsonConfigData.framework.name = framework;\n }\n }\n else {\n jsonConfigData = {\n framework: {\n name: framework,\n },\n };\n }\n fs.writeFileSync(jsonConfigPath, JSON.stringify(jsonConfigData, null, 2), 'utf8');\n return true;\n });\n }\n initRopConfig(projectId, accessKey) {\n return __awaiter(this, void 0, void 0, function* () {\n const ropConfigDirPath = path.join('.', '.rop');\n if (!fs.existsSync(ropConfigDirPath)) {\n fs.mkdirSync(ropConfigDirPath);\n }\n const ropConfigPath = path.join(ropConfigDirPath, 'config.json');\n let ropConfigData = {};\n if (fs.existsSync(ropConfigPath)) {\n ropConfigData = JSON.parse(fs.readFileSync(ropConfigPath, 'utf8'));\n }\n ropConfigData.projectId = projectId;\n if (accessKey) {\n ropConfigData.accessKey = accessKey;\n }\n fs.writeFileSync(ropConfigPath, JSON.stringify(ropConfigData, null, 2), 'utf8');\n });\n }\n initGitignore() {\n return __awaiter(this, void 0, void 0, function* () {\n const gitignorePath = path.join('.', '.gitignore');\n if (fs.existsSync(gitignorePath)) {\n const gitignoreData = fs.readFileSync(gitignorePath, 'utf8');\n if (!gitignoreData.includes('.rop')) {\n fs.appendFileSync(gitignorePath, `\\n.rop`, 'utf8');\n }\n }\n else {\n fs.writeFileSync(gitignorePath, `.rop`, 'utf8');\n }\n });\n }\n}\n","import path from 'node:path';\nimport fs from 'node:fs';\nexport const defaultHost = 'http://dev.api.rop.coolcatapp.com';\nexport const getHost = () => {\n const configFilePath = path.join('.rop', 'config.json');\n if (fs.existsSync(configFilePath)) {\n const config = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));\n if (config.host) {\n return config.host;\n }\n }\n return defaultHost;\n};\n","import { __awaiter } from \"tslib\";\nimport fs from 'fs';\nimport * as os from 'node:os';\nimport path from 'node:path';\nimport { defaultHost } from './config';\nimport colors from 'ansi-colors';\nconst LOGIN_API = '/api/auth/login';\nconst REFRESH_TOKEN_API = '/api/auth/refresh';\nconst CHECK_AND_REFRESH_TOKEN_API = '/api/auth/checkAndRefresh';\nexport class AuthApi {\n constructor({ baseDomain }) {\n this.baseDomain = baseDomain !== null && baseDomain !== void 0 ? baseDomain : defaultHost;\n }\n login(req) {\n return __awaiter(this, void 0, void 0, function* () {\n var _a;\n const res = yield fetch(`${this.baseDomain}${LOGIN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(req),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n console.log(colors.red(`Login failed: status:${res.status}, message:${(_a = resBody.message) !== null && _a !== void 0 ? _a : res.statusText}`));\n return false;\n }\n const homedir = path.join(os.homedir(), '.rop');\n if (!fs.existsSync(homedir)) {\n fs.mkdirSync(homedir);\n }\n const userFilePath = path.join(homedir, 'user');\n fs.writeFileSync(userFilePath, JSON.stringify(resBody.data, null, 2), 'utf8');\n return true;\n });\n }\n refreshToken() {\n return __awaiter(this, void 0, void 0, function* () {\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n console.log(colors.red(`No permission! Please execute [rop login] or use --accessKey`));\n return false;\n }\n const user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n const res = yield fetch(`${this.baseDomain}${REFRESH_TOKEN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify({ token: user.auth.refreshToken }),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n if (!resBody.message || res.status != 400) {\n console.log(colors.red(`Refresh token failed: status:${res.status}, statusText:${res.statusText}`));\n }\n else {\n console.log(colors.red(`Authorization expired please execute the login command`));\n fs.rmSync(userFilePath);\n }\n return false;\n }\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return true;\n });\n }\n getToken() {\n return __awaiter(this, void 0, void 0, function* () {\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n if (!fs.existsSync(userFilePath)) {\n return undefined;\n }\n return JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n });\n }\n checkAndRefreshToken() {\n return __awaiter(this, void 0, void 0, function* () {\n let user = yield this.getToken();\n if (!user) {\n return undefined;\n }\n const res = yield fetch(`${this.baseDomain}${CHECK_AND_REFRESH_TOKEN_API}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json;charset=utf-8',\n },\n body: JSON.stringify(user.auth),\n });\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n return undefined;\n }\n const homedir = path.join(os.homedir(), '.rop');\n const userFilePath = path.join(homedir, 'user');\n user = JSON.parse(fs.readFileSync(userFilePath, 'utf8'));\n user.auth = resBody.data;\n fs.writeFileSync(userFilePath, JSON.stringify(user), 'utf8');\n return user;\n });\n }\n request(req) {\n return __awaiter(this, void 0, void 0, function* () {\n let user = yield this.getToken();\n if (!user) {\n console.log(colors.red(`No permission! Please execute [rop login]`));\n return undefined;\n }\n const res = yield req(user.auth.accessToken);\n const resBody = yield res.json();\n if (!res.ok || !resBody.data) {\n switch (res.status) {\n case 400:\n console.log(JSON.stringify(resBody));\n break;\n case 401:\n const result = yield this.refreshToken();\n if (result) {\n return yield this.request(req);\n }\n break;\n default:\n console.log(colors.red(`request failed: status:${res.status}, statusText:${res.statusText}`));\n }\n return undefined;\n }\n return resBody.data;\n });\n }\n}\n"],"names":["fetch","path","fs"],"mappings":"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","x_google_ignoreList":[0]}
@@ -21,6 +21,7 @@ export interface UploadDto {
21
21
  platform: Platform;
22
22
  accessKey?: string;
23
23
  token?: string;
24
+ teamSign?: string;
24
25
  projectId?: string;
25
26
  branch?: string;
26
27
  version?: string;
@@ -68,6 +69,7 @@ export type LoginReq = {
68
69
  };
69
70
  export type LoginRes = {
70
71
  auth: RefreshTokenType;
72
+ user: UserInfoType;
71
73
  };
72
74
  export type RefreshTokenType = {
73
75
  accessToken: string;
@@ -92,4 +94,17 @@ export type AccessKeyType = {
92
94
  enabled: boolean;
93
95
  projectId: string;
94
96
  };
97
+ export type UserInfoType = {
98
+ username: string;
99
+ accountId: string;
100
+ teams: TeamType[];
101
+ };
102
+ export type TeamType = {
103
+ key: string;
104
+ name: string;
105
+ description: string;
106
+ role: string;
107
+ accountId: string;
108
+ sign: string;
109
+ };
95
110
  export {};
@@ -5,7 +5,7 @@ export declare class RopUploadApi {
5
5
  baseDomain: string;
6
6
  });
7
7
  upload(_config: UploadType): Promise<{
8
- success: boolean;
8
+ success: true;
9
9
  body: unknown;
10
10
  }>;
11
11
  private checkParams;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sevenvip666/rop",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "files": [
5
5
  "dist"
6
6
  ],