@catladder/cli 1.143.0 → 1.144.1

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.
@@ -0,0 +1 @@
1
+ export declare const boxWithAsci: (str: string) => string;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.boxWithAsci = void 0;
4
+ // thx copilot
5
+ var boxWithAsci = function (str) {
6
+ var length = str.length;
7
+ var box = "╔" + "═".repeat(length + 3) + "╗";
8
+ var empty = "║ " + " ".repeat(length + 1) + " ║";
9
+ var text = "║ " + str + " ║";
10
+ var bottom = "╚" + "═".repeat(length + 3) + "╝";
11
+ return [box, empty, text, empty, bottom].join("\n");
12
+ };
13
+ exports.boxWithAsci = boxWithAsci;
14
+ //# sourceMappingURL=boxWithAscii.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boxWithAscii.js","sourceRoot":"","sources":["../../src/utils/boxWithAscii.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACP,IAAM,WAAW,GAAG,UAAC,GAAW;IACrC,IAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC1B,IAAM,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAC/C,IAAM,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;IACnD,IAAM,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;IAC/B,IAAM,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAClD,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtD,CAAC,CAAC;AAPW,QAAA,WAAW,eAOtB"}
@@ -41,7 +41,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  exports.__esModule = true;
42
42
  exports.editAsFile = void 0;
43
43
  var tmp_promise_1 = require("tmp-promise");
44
- var js_yaml_1 = require("js-yaml");
44
+ var yaml_1 = require("yaml");
45
45
  var fs_extra_1 = require("fs-extra");
46
46
  var getEditor_1 = __importDefault(require("./getEditor"));
47
47
  var editAsFile = function (inObject, preamble) { return __awaiter(void 0, void 0, void 0, function () {
@@ -52,7 +52,7 @@ var editAsFile = function (inObject, preamble) { return __awaiter(void 0, void 0
52
52
  fullPreamble = preamble
53
53
  ? "#\n# ".concat(preamble.split("\n").join("\n# "), "\n#\n\n")
54
54
  : "\n";
55
- asString = fullPreamble + (0, js_yaml_1.dump)(inObject, { noRefs: true });
55
+ asString = fullPreamble + (0, yaml_1.stringify)(inObject, { aliasDuplicateObjects: false });
56
56
  return [4 /*yield*/, (0, tmp_promise_1.withFile)(function (_a) {
57
57
  var tmpFilePath = _a.path;
58
58
  return __awaiter(void 0, void 0, void 0, function () {
@@ -66,7 +66,7 @@ var editAsFile = function (inObject, preamble) { return __awaiter(void 0, void 0
66
66
  case 2: return [4 /*yield*/, (_c.sent()).open(tmpFilePath)];
67
67
  case 3:
68
68
  _c.sent();
69
- _b = js_yaml_1.load;
69
+ _b = yaml_1.parse;
70
70
  return [4 /*yield*/, (0, fs_extra_1.readFile)(tmpFilePath)];
71
71
  case 4:
72
72
  newContent = _b.apply(void 0, [(_c.sent()).toString("utf-8")]);
@@ -1 +1 @@
1
- {"version":3,"file":"editAsFile.js","sourceRoot":"","sources":["../../src/utils/editAsFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAuC;AACvC,mCAAqC;AAErC,qCAA+C;AAC/C,0DAAoC;AAE7B,IAAM,UAAU,GAAG,UACxB,QAAW,EACX,QAAiB;;;;;gBAEX,YAAY,GAAG,QAAQ;oBAC3B,CAAC,CAAC,eACF,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAGpC;oBACG,CAAC,CAAC,IAAI,CAAC;gBACH,QAAQ,GAAG,YAAY,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAGjE,qBAAM,IAAA,sBAAQ,EACZ,UAAO,EAAqB;4BAAb,WAAW,UAAA;;;;;4CACxB,qBAAM,IAAA,oBAAS,EAAC,WAAW,EAAE,QAAQ,CAAC,EAAA;;wCAAtC,SAAsC,CAAC;wCAChC,qBAAM,IAAA,sBAAS,GAAE,EAAA;4CAAxB,qBAAM,CAAC,SAAiB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAA;;wCAA3C,SAA2C,CAAC;wCAC/B,KAAA,cAAI,CAAA;wCAAE,qBAAM,IAAA,mBAAQ,EAAC,WAAW,CAAC,EAAA;;wCAA9C,UAAU,GAAG,kBAAK,CAAC,SAA2B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAM,CAAC;;;;;qBACzE,EACD,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,EAAA;;gBAPD,SAOC,CAAC;gBAEF,sBAAO,UAAU,EAAC;;;KACnB,CAAC;AAxBW,QAAA,UAAU,cAwBrB"}
1
+ {"version":3,"file":"editAsFile.js","sourceRoot":"","sources":["../../src/utils/editAsFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAuC;AACvC,6BAAwC;AAExC,qCAA+C;AAC/C,0DAAoC;AAE7B,IAAM,UAAU,GAAG,UACxB,QAAW,EACX,QAAiB;;;;;gBAEX,YAAY,GAAG,QAAQ;oBAC3B,CAAC,CAAC,eACF,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAGpC;oBACG,CAAC,CAAC,IAAI,CAAC;gBACH,QAAQ,GACZ,YAAY,GAAG,IAAA,gBAAS,EAAC,QAAQ,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC,CAAC;gBAGvE,qBAAM,IAAA,sBAAQ,EACZ,UAAO,EAAqB;4BAAb,WAAW,UAAA;;;;;4CACxB,qBAAM,IAAA,oBAAS,EAAC,WAAW,EAAE,QAAQ,CAAC,EAAA;;wCAAtC,SAAsC,CAAC;wCAChC,qBAAM,IAAA,sBAAS,GAAE,EAAA;4CAAxB,qBAAM,CAAC,SAAiB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAA;;wCAA3C,SAA2C,CAAC;wCAC/B,KAAA,YAAK,CAAA;wCAAE,qBAAM,IAAA,mBAAQ,EAAC,WAAW,CAAC,EAAA;;wCAA/C,UAAU,GAAG,kBAAM,CAAC,SAA2B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAM,CAAC;;;;;qBAC1E,EACD,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,EAAA;;gBAPD,SAOC,CAAC;gBAEF,sBAAO,UAAU,EAAC;;;KACnB,CAAC;AAzBW,QAAA,UAAU,cAyBrB"}
@@ -1,2 +1 @@
1
1
  export declare const readFileOrError: (filePath: string) => Promise<any[]>;
2
- export declare const readYaml: <T = Record<string, any>>(filename: string) => Promise<T>;
@@ -39,9 +39,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
40
  };
41
41
  exports.__esModule = true;
42
- exports.readYaml = exports.readFileOrError = void 0;
42
+ exports.readFileOrError = void 0;
43
43
  var fs_extra_1 = __importDefault(require("fs-extra"));
44
- var js_yaml_1 = __importDefault(require("js-yaml"));
45
44
  var readFile = function (file) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
46
45
  return [2 /*return*/, fs_extra_1["default"].readFile(file, { encoding: "utf-8" })];
47
46
  }); }); };
@@ -63,21 +62,4 @@ var readFileOrError = function (filePath) { return __awaiter(void 0, void 0, voi
63
62
  });
64
63
  }); };
65
64
  exports.readFileOrError = readFileOrError;
66
- var readYaml = function (filename) { return __awaiter(void 0, void 0, void 0, function () {
67
- var _a, _b, e_2;
68
- return __generator(this, function (_c) {
69
- switch (_c.label) {
70
- case 0:
71
- _c.trys.push([0, 2, , 3]);
72
- _b = (_a = js_yaml_1["default"]).load;
73
- return [4 /*yield*/, readFile(filename)];
74
- case 1: return [2 /*return*/, _b.apply(_a, [_c.sent()])];
75
- case 2:
76
- e_2 = _c.sent();
77
- return [2 /*return*/, null];
78
- case 3: return [2 /*return*/];
79
- }
80
- });
81
- }); };
82
- exports.readYaml = readYaml;
83
65
  //# sourceMappingURL=files.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/utils/files.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA0B;AAC1B,oDAA2B;AAE3B,IAAM,QAAQ,GAAG,UAAO,IAAY;IAClC,sBAAA,qBAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA;SAAA,CAAC;AAEpC,IAAM,eAAe,GAAG,UAAO,QAAgB;;;;;;gBAErC,qBAAM,QAAQ,CAAC,QAAQ,CAAC,EAAA;;gBAA/B,IAAI,GAAG,SAAwB;gBACrC,sBAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAC;;;gBAEpB,sBAAO,CAAC,GAAC,CAAC,EAAC;;;;KAEd,CAAC;AAPW,QAAA,eAAe,mBAO1B;AAEK,IAAM,QAAQ,GAAG,UAAgC,QAAgB;;;;;;gBAE7D,KAAA,CAAA,KAAA,oBAAI,CAAA,CAAC,IAAI,CAAA;gBAAC,qBAAM,QAAQ,CAAC,QAAQ,CAAC,EAAA;oBAAzC,sBAAO,cAAU,SAAwB,EAAM,EAAC;;;gBAEhD,sBAAO,IAAI,EAAC;;;;KAEf,CAAC;AANW,QAAA,QAAQ,YAMnB"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/utils/files.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA0B;AAE1B,IAAM,QAAQ,GAAG,UAAO,IAAY;IAClC,sBAAA,qBAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA;SAAA,CAAC;AAEpC,IAAM,eAAe,GAAG,UAAO,QAAgB;;;;;;gBAErC,qBAAM,QAAQ,CAAC,QAAQ,CAAC,EAAA;;gBAA/B,IAAI,GAAG,SAAwB;gBACrC,sBAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAC;;;gBAEpB,sBAAO,CAAC,GAAC,CAAC,EAAC;;;;KAEd,CAAC;AAPW,QAAA,eAAe,mBAO1B"}
@@ -53,7 +53,7 @@ exports.__esModule = true;
53
53
  exports.setPreference = exports.getPreference = exports.hasPreference = void 0;
54
54
  var fs_extra_1 = __importDefault(require("fs-extra"));
55
55
  var os_1 = require("os");
56
- var js_yaml_1 = require("js-yaml");
56
+ var yaml_1 = require("yaml");
57
57
  var directory = "".concat((0, os_1.homedir)(), "/.catladder");
58
58
  var file = "".concat(directory, "/preferences.yml");
59
59
  var getPreferences = function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -69,7 +69,7 @@ var getPreferences = function () { return __awaiter(void 0, void 0, void 0, func
69
69
  _c.sent();
70
70
  _c.label = 3;
71
71
  case 3:
72
- _a = js_yaml_1.load;
72
+ _a = yaml_1.parse;
73
73
  return [4 /*yield*/, fs_extra_1["default"].readFile(file, { encoding: "utf-8" })];
74
74
  case 4: return [2 /*return*/, ((_b = _a.apply(void 0, [_c.sent()])) !== null && _b !== void 0 ? _b : {})];
75
75
  }
@@ -108,7 +108,7 @@ var setPreference = function (key, value) { return __awaiter(void 0, void 0, voi
108
108
  case 1:
109
109
  preferences = _b.sent();
110
110
  newPreferences = __assign(__assign({}, preferences), (_a = {}, _a[key] = value, _a));
111
- return [4 /*yield*/, fs_extra_1["default"].writeFile(file, (0, js_yaml_1.dump)(newPreferences))];
111
+ return [4 /*yield*/, fs_extra_1["default"].writeFile(file, (0, yaml_1.stringify)(newPreferences))];
112
112
  case 2:
113
113
  _b.sent();
114
114
  return [2 /*return*/];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/preferences/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA0B;AAC1B,yBAA6B;AAE7B,mCAAqC;AACrC,IAAM,SAAS,GAAG,UAAG,IAAA,YAAO,GAAE,gBAAa,CAAC;AAC5C,IAAM,IAAI,GAAG,UAAG,SAAS,qBAAkB,CAAC;AAE5C,IAAM,cAAc,GAAG;;;;;oBACf,qBAAM,qBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAA;;qBAA3B,CAAC,CAAC,SAAyB,CAAC,EAA5B,wBAA4B;gBAC9B,qBAAM,qBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAA;;gBAAzB,SAAyB,CAAC;;;gBAEpB,KAAA,cAAI,CAAA;gBAAC,qBAAM,qBAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA;oBAA3D,sBAAO,CAAC,MAAA,kBAAK,SAA8C,EAAC,mCAAI,EAAE,CAGjE,EAAC;;;KACH,CAAC;AAEK,IAAM,aAAa,GAAG,UAAO,GAAW;;;;oBACzB,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAC1C,sBAAO,GAAG,IAAI,WAAW,EAAC;;;KAC3B,CAAC;AAHW,QAAA,aAAa,iBAGxB;AACK,IAAM,aAAa,GAAG,UAAO,GAAW;;;;oBACzB,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAC1C,sBAAO,WAAW,CAAC,GAAG,CAAC,EAAC;;;KACzB,CAAC;AAHW,QAAA,aAAa,iBAGxB;AAEK,IAAM,aAAa,GAAG,UAAO,GAAW,EAAE,KAAsB;;;;;oBACjD,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAEpC,cAAc,yBACf,WAAW,gBACb,GAAG,IAAG,KAAK,MACb,CAAC;gBAEF,qBAAM,qBAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAA,cAAI,EAAC,cAAc,CAAC,CAAC,EAAA;;gBAA9C,SAA8C,CAAC;;;;KAChD,CAAC;AATW,QAAA,aAAa,iBASxB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/preferences/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA0B;AAC1B,yBAA6B;AAE7B,6BAAwC;AACxC,IAAM,SAAS,GAAG,UAAG,IAAA,YAAO,GAAE,gBAAa,CAAC;AAC5C,IAAM,IAAI,GAAG,UAAG,SAAS,qBAAkB,CAAC;AAE5C,IAAM,cAAc,GAAG;;;;;oBACf,qBAAM,qBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAA;;qBAA3B,CAAC,CAAC,SAAyB,CAAC,EAA5B,wBAA4B;gBAC9B,qBAAM,qBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAA;;gBAAzB,SAAyB,CAAC;;;gBAEpB,KAAA,YAAK,CAAA;gBAAC,qBAAM,qBAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA;oBAA5D,sBAAO,CAAC,MAAA,kBAAM,SAA8C,EAAC,mCAC3D,EAAE,CAA2B,EAAC;;;KACjC,CAAC;AAEK,IAAM,aAAa,GAAG,UAAO,GAAW;;;;oBACzB,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAC1C,sBAAO,GAAG,IAAI,WAAW,EAAC;;;KAC3B,CAAC;AAHW,QAAA,aAAa,iBAGxB;AACK,IAAM,aAAa,GAAG,UAAO,GAAW;;;;oBACzB,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAC1C,sBAAO,WAAW,CAAC,GAAG,CAAC,EAAC;;;KACzB,CAAC;AAHW,QAAA,aAAa,iBAGxB;AAEK,IAAM,aAAa,GAAG,UAAO,GAAW,EAAE,KAAsB;;;;;oBACjD,qBAAM,cAAc,EAAE,EAAA;;gBAApC,WAAW,GAAG,SAAsB;gBAEpC,cAAc,yBACf,WAAW,gBACb,GAAG,IAAG,KAAK,MACb,CAAC;gBAEF,qBAAM,qBAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAA,gBAAS,EAAC,cAAc,CAAC,CAAC,EAAA;;gBAAnD,SAAmD,CAAC;;;;KACrD,CAAC;AATW,QAAA,aAAa,iBASxB"}
package/package.json CHANGED
@@ -52,7 +52,7 @@
52
52
  }
53
53
  ],
54
54
  "license": "MIT",
55
- "version": "1.143.0",
55
+ "version": "1.144.1",
56
56
  "scripts": {
57
57
  "lint": "eslint \"src/**/*.ts\"",
58
58
  "lint:fix": "eslint \"src/**/*.ts\" --fix",
@@ -74,13 +74,12 @@
74
74
  "ts-node": "^10.9.1"
75
75
  },
76
76
  "devDependencies": {
77
- "@catladder/pipeline": "1.143.0",
77
+ "@catladder/pipeline": "1.144.1",
78
78
  "@gitbeaker/rest": "^39.28.0",
79
79
  "@kubernetes/client-node": "^0.16.2",
80
80
  "@tsconfig/node14": "^1.0.1",
81
81
  "@types/common-tags": "^1.8.0",
82
82
  "@types/fs-extra": "^5.0.4",
83
- "@types/js-yaml": "^4.0.5",
84
83
  "@types/lodash": "^4.14.185",
85
84
  "@types/memoizee": "^0.4.2",
86
85
  "@types/node-fetch": "^2.1.4",
@@ -99,7 +98,6 @@
99
98
  "eslint": "^8.7.0",
100
99
  "fs-extra": "^7.0.1",
101
100
  "gitlab": "^4.4.1",
102
- "js-yaml": "^4.1.0",
103
101
  "lodash": "^4.17.21",
104
102
  "memoizee": "^0.4.14",
105
103
  "node-fetch": "^2.3.0",
@@ -108,6 +106,7 @@
108
106
  "tmp-promise": "^2.0.2",
109
107
  "ts-results-es": "^4.1.0-alpha.1",
110
108
  "typescript": "^4.5.4",
111
- "vorpal": "^1.12.0"
109
+ "vorpal": "^1.12.0",
110
+ "yaml": "^2.4.5"
112
111
  }
113
112
  }
@@ -10,11 +10,14 @@ import theStuffThatReallyMatters from "./commands/theStuffThatReallyMatters";
10
10
 
11
11
  import { verify } from "./verify";
12
12
  import { showProjectBanner } from "./commands/project/utils/showProjectBanner";
13
+ import { boxWithAsci } from "../../utils/boxWithAscii";
13
14
 
14
15
  export default async () => {
15
16
  const vorpal = new Vorpal();
16
17
 
17
- const welcomeMessage = `catladder 2022 😻 version ${packageInfos.version}`;
18
+ const welcomeMessage = boxWithAsci(
19
+ `catladder 😻 v${packageInfos.version} ✨`
20
+ );
18
21
 
19
22
  vorpal
20
23
  .delimiter("catladder $") // emoji messes with cursor :-( https://github.com/dthree/vorpal/issues/332
@@ -1,4 +1,4 @@
1
- import { dump } from "js-yaml";
1
+ import { stringify } from "yaml";
2
2
  import { pick } from "lodash";
3
3
  import type Vorpal from "vorpal";
4
4
  import { getProjectPods } from "../../../../kubernetes";
@@ -13,6 +13,8 @@ export default async (vorpal: Vorpal) =>
13
13
  await ensureCluster.call(this, envComponent);
14
14
  const pods = await getProjectPods(envComponent);
15
15
  this.log(
16
- dump(pods.map((p) => pick(p, ["metadata.name", "status.startTime"])))
16
+ stringify(
17
+ pods.map((p) => pick(p, ["metadata.name", "status.startTime"]))
18
+ )
17
19
  );
18
20
  });
@@ -11,7 +11,7 @@ import type { CommandInstance } from "vorpal";
11
11
  import { getAllVariables, getVariableValueByRawName } from "../utils/gitlab";
12
12
 
13
13
  import { getGitRoot } from "../utils/projects";
14
- import { readYaml } from "../utils/files";
14
+
15
15
  import { watch } from "fs";
16
16
 
17
17
  export { parseChoice } from "./parseChoice";
@@ -42,19 +42,6 @@ export const getProjectConfig = async () => {
42
42
  return currentConfig as Config;
43
43
  };
44
44
 
45
- export const getGitlabCiFilePath = async () => {
46
- const gitRoot = await getGitRoot();
47
- return gitRoot + "/.gitlab-ci.yml";
48
- };
49
- export const getGitlabCi = async <T = Record<string, any>>() => {
50
- try {
51
- return readYaml(await getGitlabCiFilePath()) as Promise<T>;
52
- } catch (e) {
53
- // ignore
54
- return null;
55
- }
56
- };
57
-
58
45
  export const getProjectComponents = async () => {
59
46
  const config = await getProjectConfig();
60
47
  if (!config) return [];
@@ -0,0 +1,9 @@
1
+ // thx copilot
2
+ export const boxWithAsci = (str: string) => {
3
+ const length = str.length;
4
+ const box = "╔" + "═".repeat(length + 3) + "╗";
5
+ const empty = "║ " + " ".repeat(length + 1) + " ║";
6
+ const text = "║ " + str + " ║";
7
+ const bottom = "╚" + "═".repeat(length + 3) + "╝";
8
+ return [box, empty, text, empty, bottom].join("\n");
9
+ };
@@ -1,5 +1,5 @@
1
1
  import { withFile } from "tmp-promise";
2
- import { dump, load } from "js-yaml";
2
+ import { parse, stringify } from "yaml";
3
3
 
4
4
  import { readFile, writeFile } from "fs-extra";
5
5
  import getEditor from "./getEditor";
@@ -15,14 +15,15 @@ export const editAsFile = async <T>(
15
15
 
16
16
  `
17
17
  : "\n";
18
- const asString = fullPreamble + dump(inObject, { noRefs: true });
18
+ const asString =
19
+ fullPreamble + stringify(inObject, { aliasDuplicateObjects: false });
19
20
  let newContent: T;
20
21
 
21
22
  await withFile(
22
23
  async ({ path: tmpFilePath }) => {
23
24
  await writeFile(tmpFilePath, asString);
24
25
  await (await getEditor()).open(tmpFilePath);
25
- newContent = load((await readFile(tmpFilePath)).toString("utf-8")) as T;
26
+ newContent = parse((await readFile(tmpFilePath)).toString("utf-8")) as T;
26
27
  },
27
28
  { postfix: ".yml" }
28
29
  );
@@ -1,5 +1,4 @@
1
1
  import fs from "fs-extra";
2
- import yaml from "js-yaml";
3
2
 
4
3
  const readFile = async (file: string) =>
5
4
  fs.readFile(file, { encoding: "utf-8" });
@@ -12,11 +11,3 @@ export const readFileOrError = async (filePath: string) => {
12
11
  return [e];
13
12
  }
14
13
  };
15
-
16
- export const readYaml = async <T = Record<string, any>>(filename: string) => {
17
- try {
18
- return yaml.load(await readFile(filename)) as T;
19
- } catch (e) {
20
- return null;
21
- }
22
- };
@@ -1,7 +1,7 @@
1
1
  import fs from "fs-extra";
2
2
  import { homedir } from "os";
3
3
 
4
- import { load, dump } from "js-yaml";
4
+ import { parse, stringify } from "yaml";
5
5
  const directory = `${homedir()}/.catladder`;
6
6
  const file = `${directory}/preferences.yml`;
7
7
 
@@ -9,10 +9,8 @@ const getPreferences = async () => {
9
9
  if (!(await fs.pathExists(file))) {
10
10
  await fs.createFile(file);
11
11
  }
12
- return (load(await fs.readFile(file, { encoding: "utf-8" })) ?? {}) as Record<
13
- string,
14
- string
15
- >;
12
+ return (parse(await fs.readFile(file, { encoding: "utf-8" })) ??
13
+ {}) as Record<string, string>;
16
14
  };
17
15
 
18
16
  export const hasPreference = async (key: string) => {
@@ -32,5 +30,5 @@ export const setPreference = async (key: string, value: string | number) => {
32
30
  [key]: value,
33
31
  };
34
32
 
35
- await fs.writeFile(file, dump(newPreferences));
33
+ await fs.writeFile(file, stringify(newPreferences));
36
34
  };