@gonzui/csheet-cli 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +1 -1
- package/README.md +1 -1
- package/dist/commands/add.js +14 -14
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/edit.js +7 -7
- package/dist/commands/edit.js.map +1 -1
- package/dist/commands/export.js +6 -6
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/list.js +8 -8
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/remove.js +8 -8
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/search.js +10 -10
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/show.js +9 -9
- package/dist/commands/show.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.ja.md
CHANGED
package/README.md
CHANGED
package/dist/commands/add.js
CHANGED
|
@@ -19,7 +19,7 @@ const confirmOverwrite = async (name) => {
|
|
|
19
19
|
output: process.stdout,
|
|
20
20
|
});
|
|
21
21
|
return new Promise((resolve) => {
|
|
22
|
-
rl.question(chalk_1.default.yellow(
|
|
22
|
+
rl.question(chalk_1.default.yellow(`Sheet "${name}" already exists. Overwrite? (y/N): `), (answer) => {
|
|
23
23
|
rl.close();
|
|
24
24
|
resolve(answer.toLowerCase() === 'y');
|
|
25
25
|
});
|
|
@@ -37,7 +37,7 @@ const openEditor = (filePath) => {
|
|
|
37
37
|
resolve();
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
40
|
-
reject(new Error(
|
|
40
|
+
reject(new Error(`Editor exited with code ${code}`));
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
child.on('error', (err) => {
|
|
@@ -46,14 +46,14 @@ const openEditor = (filePath) => {
|
|
|
46
46
|
});
|
|
47
47
|
};
|
|
48
48
|
exports.addCommand = new commander_1.Command('add')
|
|
49
|
-
.description('
|
|
50
|
-
.argument('<name>', '
|
|
51
|
-
.option('-f, --file <path>', '
|
|
49
|
+
.description('Add a cheatsheet')
|
|
50
|
+
.argument('<name>', 'Name of the cheatsheet')
|
|
51
|
+
.option('-f, --file <path>', 'Add from existing file')
|
|
52
52
|
.addOption(new commander_1.Option('-i, --image <path>', '画像ファイルを追加').hideHelp())
|
|
53
53
|
.action(async (name, options) => {
|
|
54
54
|
// 名前のバリデーション
|
|
55
55
|
if (!(0, storage_1.validateName)(name)) {
|
|
56
|
-
console.error(chalk_1.default.red('
|
|
56
|
+
console.error(chalk_1.default.red('Error: Name can only contain alphanumeric characters, hyphens, and underscores'));
|
|
57
57
|
process.exit(1);
|
|
58
58
|
}
|
|
59
59
|
// 既存シートのチェック
|
|
@@ -61,7 +61,7 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
61
61
|
if (existingSheet) {
|
|
62
62
|
const shouldOverwrite = await confirmOverwrite(name);
|
|
63
63
|
if (!shouldOverwrite) {
|
|
64
|
-
console.log(chalk_1.default.yellow('
|
|
64
|
+
console.log(chalk_1.default.yellow('Cancelled'));
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -71,11 +71,11 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
71
71
|
// 画像ファイルから追加
|
|
72
72
|
const imagePath = path_1.default.resolve(options.image);
|
|
73
73
|
if (!(await fs_extra_1.default.pathExists(imagePath))) {
|
|
74
|
-
console.error(chalk_1.default.red(
|
|
74
|
+
console.error(chalk_1.default.red(`Error: File not found: ${imagePath}`));
|
|
75
75
|
process.exit(1);
|
|
76
76
|
}
|
|
77
77
|
if (!(0, storage_1.isValidImageExtension)(imagePath)) {
|
|
78
|
-
console.error(chalk_1.default.red('
|
|
78
|
+
console.error(chalk_1.default.red('Error: Unsupported image format (png, jpg, jpeg, gif, webp, svg)'));
|
|
79
79
|
process.exit(1);
|
|
80
80
|
}
|
|
81
81
|
const ext = path_1.default.extname(imagePath);
|
|
@@ -90,7 +90,7 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
90
90
|
updatedAt: now,
|
|
91
91
|
};
|
|
92
92
|
await (0, storage_1.addOrUpdateSheet)(sheet);
|
|
93
|
-
console.log(chalk_1.default.green(
|
|
93
|
+
console.log(chalk_1.default.green(`Added image sheet "${name}"`));
|
|
94
94
|
}
|
|
95
95
|
else if (options.file) {
|
|
96
96
|
// 既存テキストファイルから追加
|
|
@@ -111,7 +111,7 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
111
111
|
updatedAt: now,
|
|
112
112
|
};
|
|
113
113
|
await (0, storage_1.addOrUpdateSheet)(sheet);
|
|
114
|
-
console.log(chalk_1.default.green(
|
|
114
|
+
console.log(chalk_1.default.green(`Added text sheet "${name}"`));
|
|
115
115
|
}
|
|
116
116
|
else {
|
|
117
117
|
// エディタで新規作成
|
|
@@ -126,7 +126,7 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
126
126
|
const content = await fs_extra_1.default.readFile(filePath, 'utf-8');
|
|
127
127
|
if (content.trim() === '') {
|
|
128
128
|
await fs_extra_1.default.remove(filePath);
|
|
129
|
-
console.log(chalk_1.default.yellow('
|
|
129
|
+
console.log(chalk_1.default.yellow('Cancelled due to empty content'));
|
|
130
130
|
return;
|
|
131
131
|
}
|
|
132
132
|
const sheet = {
|
|
@@ -137,11 +137,11 @@ exports.addCommand = new commander_1.Command('add')
|
|
|
137
137
|
updatedAt: now,
|
|
138
138
|
};
|
|
139
139
|
await (0, storage_1.addOrUpdateSheet)(sheet);
|
|
140
|
-
console.log(chalk_1.default.green(
|
|
140
|
+
console.log(chalk_1.default.green(`Added text sheet "${name}"`));
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
catch (error) {
|
|
144
|
-
console.error(chalk_1.default.red(
|
|
144
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
145
145
|
process.exit(1);
|
|
146
146
|
}
|
|
147
147
|
});
|
package/dist/commands/add.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA4C;AAC5C,kDAA0B;AAC1B,gDAAwB;AACxB,wDAA0B;AAC1B,iDAAsC;AACtC,wDAAgC;AAEhC,4CAMwB;AACxB,0CAAkE;AAElE,aAAa;AACb,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAChE,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CACT,eAAK,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/edit.js
CHANGED
|
@@ -21,7 +21,7 @@ const openEditor = (filePath) => {
|
|
|
21
21
|
resolve();
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
24
|
-
reject(new Error(
|
|
24
|
+
reject(new Error(`Editor exited with code ${code}`));
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
child.on('error', (err) => {
|
|
@@ -30,17 +30,17 @@ const openEditor = (filePath) => {
|
|
|
30
30
|
});
|
|
31
31
|
};
|
|
32
32
|
exports.editCommand = new commander_1.Command('edit')
|
|
33
|
-
.description('
|
|
34
|
-
.argument('<name>', '
|
|
33
|
+
.description('Edit a cheatsheet (text only)')
|
|
34
|
+
.argument('<name>', 'Name of the cheatsheet')
|
|
35
35
|
.action(async (name) => {
|
|
36
36
|
try {
|
|
37
37
|
const sheet = await (0, storage_1.getSheet)(name);
|
|
38
38
|
if (!sheet) {
|
|
39
|
-
console.error(chalk_1.default.red(
|
|
39
|
+
console.error(chalk_1.default.red(`Error: Sheet "${name}" not found`));
|
|
40
40
|
process.exit(1);
|
|
41
41
|
}
|
|
42
42
|
if (sheet.type !== 'text') {
|
|
43
|
-
console.error(chalk_1.default.red('
|
|
43
|
+
console.error(chalk_1.default.red('Error: Cannot edit image sheets'));
|
|
44
44
|
process.exit(1);
|
|
45
45
|
}
|
|
46
46
|
const filePath = (0, storage_1.getSheetFilePath)(sheet);
|
|
@@ -48,10 +48,10 @@ exports.editCommand = new commander_1.Command('edit')
|
|
|
48
48
|
// 更新日時を更新
|
|
49
49
|
sheet.updatedAt = new Date().toISOString();
|
|
50
50
|
await (0, storage_1.addOrUpdateSheet)(sheet);
|
|
51
|
-
console.log(chalk_1.default.green(
|
|
51
|
+
console.log(chalk_1.default.green(`Updated sheet "${name}"`));
|
|
52
52
|
}
|
|
53
53
|
catch (error) {
|
|
54
|
-
console.error(chalk_1.default.red(
|
|
54
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
55
55
|
process.exit(1);
|
|
56
56
|
}
|
|
57
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,iDAAsC;AACtC,4CAA8E;AAC9E,0CAA0C;AAE1C,mBAAmB;AACnB,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAiB,EAAE;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YACtC,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,iDAAsC;AACtC,4CAA8E;AAC9E,0CAA0C;AAE1C,mBAAmB;AACnB,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAiB,EAAE;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE;YACtC,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACxB,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEW,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,+BAA+B,CAAC;KAC5C,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;KAC5C,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAE;IAC7B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;QACzC,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE3B,UAAU;QACV,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;QAE9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/commands/export.js
CHANGED
|
@@ -10,14 +10,14 @@ const path_1 = __importDefault(require("path"));
|
|
|
10
10
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
11
11
|
const storage_1 = require("../lib/storage");
|
|
12
12
|
exports.exportCommand = new commander_1.Command('export')
|
|
13
|
-
.description('
|
|
14
|
-
.argument('<name>', '
|
|
15
|
-
.option('-o, --out <path>', '
|
|
13
|
+
.description('Export a cheatsheet')
|
|
14
|
+
.argument('<name>', 'Name of the cheatsheet')
|
|
15
|
+
.option('-o, --out <path>', 'Output path')
|
|
16
16
|
.action(async (name, options) => {
|
|
17
17
|
try {
|
|
18
18
|
const sheet = await (0, storage_1.getSheet)(name);
|
|
19
19
|
if (!sheet) {
|
|
20
|
-
console.error(chalk_1.default.red(
|
|
20
|
+
console.error(chalk_1.default.red(`Error: Sheet "${name}" not found`));
|
|
21
21
|
process.exit(1);
|
|
22
22
|
}
|
|
23
23
|
const srcPath = (0, storage_1.getSheetFilePath)(sheet);
|
|
@@ -26,10 +26,10 @@ exports.exportCommand = new commander_1.Command('export')
|
|
|
26
26
|
// 出力先ディレクトリが存在することを確認
|
|
27
27
|
await fs_extra_1.default.ensureDir(destDir);
|
|
28
28
|
await fs_extra_1.default.copy(srcPath, destPath);
|
|
29
|
-
console.log(chalk_1.default.green(
|
|
29
|
+
console.log(chalk_1.default.green(`Exported: ${destPath}`));
|
|
30
30
|
}
|
|
31
31
|
catch (error) {
|
|
32
|
-
console.error(chalk_1.default.red(
|
|
32
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
33
33
|
process.exit(1);
|
|
34
34
|
}
|
|
35
35
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,gDAAwB;AACxB,wDAA0B;AAC1B,4CAA4D;AAE/C,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/commands/export.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,gDAAwB;AACxB,wDAA0B;AAC1B,4CAA4D;AAE/C,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,qBAAqB,CAAC;KAClC,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;KAC5C,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC;KACzC,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAAyB,EAAE,EAAE;IACxD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpD,sBAAsB;QACtB,MAAM,kBAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5B,MAAM,kBAAE,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/commands/list.js
CHANGED
|
@@ -9,33 +9,33 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
9
9
|
const cli_table3_1 = __importDefault(require("cli-table3"));
|
|
10
10
|
const storage_1 = require("../lib/storage");
|
|
11
11
|
exports.listCommand = new commander_1.Command('list')
|
|
12
|
-
.description('
|
|
12
|
+
.description('List all cheatsheets')
|
|
13
13
|
.action(async () => {
|
|
14
14
|
try {
|
|
15
15
|
const sheets = await (0, storage_1.getAllSheets)();
|
|
16
16
|
if (sheets.length === 0) {
|
|
17
|
-
console.log(chalk_1.default.yellow('
|
|
17
|
+
console.log(chalk_1.default.yellow('No cheatsheets found'));
|
|
18
18
|
return;
|
|
19
19
|
}
|
|
20
20
|
// 更新日時でソート(新しい順)
|
|
21
21
|
sheets.sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
|
|
22
22
|
const table = new cli_table3_1.default({
|
|
23
23
|
head: [
|
|
24
|
-
chalk_1.default.cyan('
|
|
25
|
-
chalk_1.default.cyan('
|
|
26
|
-
chalk_1.default.cyan('
|
|
24
|
+
chalk_1.default.cyan('Name'),
|
|
25
|
+
chalk_1.default.cyan('Type'),
|
|
26
|
+
chalk_1.default.cyan('Updated'),
|
|
27
27
|
],
|
|
28
28
|
colWidths: [30, 10, 25],
|
|
29
29
|
});
|
|
30
30
|
for (const sheet of sheets) {
|
|
31
|
-
const typeLabel = sheet.type === 'text' ? '
|
|
32
|
-
const updatedAt = new Date(sheet.updatedAt).toLocaleString('
|
|
31
|
+
const typeLabel = sheet.type === 'text' ? 'Text' : 'Image';
|
|
32
|
+
const updatedAt = new Date(sheet.updatedAt).toLocaleString('en-US');
|
|
33
33
|
table.push([sheet.name, typeLabel, updatedAt]);
|
|
34
34
|
}
|
|
35
35
|
console.log(table.toString());
|
|
36
36
|
}
|
|
37
37
|
catch (error) {
|
|
38
|
-
console.error(chalk_1.default.red(
|
|
38
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
39
39
|
process.exit(1);
|
|
40
40
|
}
|
|
41
41
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4DAA+B;AAC/B,4CAA8C;AAEjC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4DAA+B;AAC/B,4CAA8C;AAEjC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAY,GAAE,CAAC;QAEpC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,iBAAiB;QACjB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzF,MAAM,KAAK,GAAG,IAAI,oBAAK,CAAC;YACtB,IAAI,EAAE;gBACJ,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC;gBAClB,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC;gBAClB,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC;aACtB;YACD,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;SACxB,CAAC,CAAC;QAEH,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACpE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/commands/remove.js
CHANGED
|
@@ -15,35 +15,35 @@ const confirmDelete = async (name) => {
|
|
|
15
15
|
output: process.stdout,
|
|
16
16
|
});
|
|
17
17
|
return new Promise((resolve) => {
|
|
18
|
-
rl.question(chalk_1.default.yellow(
|
|
18
|
+
rl.question(chalk_1.default.yellow(`Delete sheet "${name}"? (y/N): `), (answer) => {
|
|
19
19
|
rl.close();
|
|
20
20
|
resolve(answer.toLowerCase() === 'y');
|
|
21
21
|
});
|
|
22
22
|
});
|
|
23
23
|
};
|
|
24
24
|
exports.removeCommand = new commander_1.Command('rm')
|
|
25
|
-
.description('
|
|
26
|
-
.argument('<name>', '
|
|
27
|
-
.option('-f, --force', '
|
|
25
|
+
.description('Remove a cheatsheet')
|
|
26
|
+
.argument('<name>', 'Name of the cheatsheet')
|
|
27
|
+
.option('-f, --force', 'Skip confirmation')
|
|
28
28
|
.action(async (name, options) => {
|
|
29
29
|
try {
|
|
30
30
|
const sheet = await (0, storage_1.getSheet)(name);
|
|
31
31
|
if (!sheet) {
|
|
32
|
-
console.error(chalk_1.default.red(
|
|
32
|
+
console.error(chalk_1.default.red(`Error: Sheet "${name}" not found`));
|
|
33
33
|
process.exit(1);
|
|
34
34
|
}
|
|
35
35
|
if (!options.force) {
|
|
36
36
|
const shouldDelete = await confirmDelete(name);
|
|
37
37
|
if (!shouldDelete) {
|
|
38
|
-
console.log(chalk_1.default.yellow('
|
|
38
|
+
console.log(chalk_1.default.yellow('Cancelled'));
|
|
39
39
|
return;
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
await (0, storage_1.removeSheet)(name);
|
|
43
|
-
console.log(chalk_1.default.green(
|
|
43
|
+
console.log(chalk_1.default.green(`Deleted sheet "${name}"`));
|
|
44
44
|
}
|
|
45
45
|
catch (error) {
|
|
46
|
-
console.error(chalk_1.default.red(
|
|
46
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
47
47
|
process.exit(1);
|
|
48
48
|
}
|
|
49
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,wDAAgC;AAChC,4CAAuD;AAEvD,YAAY;AACZ,MAAM,aAAa,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAC7D,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CACT,eAAK,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,wDAAgC;AAChC,4CAAuD;AAEvD,YAAY;AACZ,MAAM,aAAa,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAC7D,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,QAAQ,CACT,eAAK,CAAC,MAAM,CAAC,iBAAiB,IAAI,YAAY,CAAC,EAC/C,CAAC,MAAM,EAAE,EAAE;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAC;QACxC,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEW,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,IAAI,CAAC;KAC3C,WAAW,CAAC,qBAAqB,CAAC;KAClC,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;KAC5C,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;KAC1C,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAA4B,EAAE,EAAE;IAC3D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/commands/search.js
CHANGED
|
@@ -8,8 +8,8 @@ const commander_1 = require("commander");
|
|
|
8
8
|
const chalk_1 = __importDefault(require("chalk"));
|
|
9
9
|
const storage_1 = require("../lib/storage");
|
|
10
10
|
exports.searchCommand = new commander_1.Command('search')
|
|
11
|
-
.description('
|
|
12
|
-
.argument('<keyword>', '
|
|
11
|
+
.description('Search cheatsheets by keyword')
|
|
12
|
+
.argument('<keyword>', 'Search keyword')
|
|
13
13
|
.action(async (keyword) => {
|
|
14
14
|
try {
|
|
15
15
|
const sheets = await (0, storage_1.getAllSheets)();
|
|
@@ -20,8 +20,8 @@ exports.searchCommand = new commander_1.Command('search')
|
|
|
20
20
|
if (sheet.name.toLowerCase().includes(lowerKeyword)) {
|
|
21
21
|
results.push({
|
|
22
22
|
name: sheet.name,
|
|
23
|
-
type: sheet.type === 'text' ? '
|
|
24
|
-
matchType: '
|
|
23
|
+
type: sheet.type === 'text' ? 'Text' : 'Image',
|
|
24
|
+
matchType: 'name',
|
|
25
25
|
});
|
|
26
26
|
continue;
|
|
27
27
|
}
|
|
@@ -31,23 +31,23 @@ exports.searchCommand = new commander_1.Command('search')
|
|
|
31
31
|
if (content.toLowerCase().includes(lowerKeyword)) {
|
|
32
32
|
results.push({
|
|
33
33
|
name: sheet.name,
|
|
34
|
-
type: '
|
|
35
|
-
matchType: '
|
|
34
|
+
type: 'Text',
|
|
35
|
+
matchType: 'content',
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
if (results.length === 0) {
|
|
41
|
-
console.log(chalk_1.default.yellow(`"${keyword}"
|
|
41
|
+
console.log(chalk_1.default.yellow(`No sheets found matching "${keyword}"`));
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
|
-
console.log(chalk_1.default.green(
|
|
44
|
+
console.log(chalk_1.default.green(`Found ${results.length} result(s):\n`));
|
|
45
45
|
for (const result of results) {
|
|
46
|
-
console.log(` ${chalk_1.default.cyan(result.name)} (${result.type}) - ${chalk_1.default.gray(result.matchType
|
|
46
|
+
console.log(` ${chalk_1.default.cyan(result.name)} (${result.type}) - ${chalk_1.default.gray('matched by ' + result.matchType)}`);
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
catch (error) {
|
|
50
|
-
console.error(chalk_1.default.red(
|
|
50
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
51
51
|
process.exit(1);
|
|
52
52
|
}
|
|
53
53
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4CAAgE;AAEnD,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4CAAgE;AAEnD,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,+BAA+B,CAAC;KAC5C,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;KACvC,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAY,GAAE,CAAC;QACpC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAwD,EAAE,CAAC;QAExE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,QAAQ;YACR,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;oBAC9C,SAAS,EAAE,MAAM;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YAED,mBAAmB;YACnB,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;gBAC9C,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACjD,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,MAAM;wBACZ,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,6BAA6B,OAAO,GAAG,CAAC,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,SAAS,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC;QAEjE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CACT,KAAK,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,OAAO,eAAK,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,CAClG,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/commands/show.js
CHANGED
|
@@ -10,15 +10,15 @@ const open_1 = __importDefault(require("open"));
|
|
|
10
10
|
const storage_1 = require("../lib/storage");
|
|
11
11
|
const markdown_1 = require("../lib/markdown");
|
|
12
12
|
exports.showCommand = new commander_1.Command('show')
|
|
13
|
-
.description('
|
|
14
|
-
.argument('<name>', '
|
|
15
|
-
.addOption(new commander_1.Option('-o, --open', '
|
|
16
|
-
.option('-r, --raw', '
|
|
13
|
+
.description('Display cheatsheet contents')
|
|
14
|
+
.argument('<name>', 'Name of the cheatsheet')
|
|
15
|
+
.addOption(new commander_1.Option('-o, --open', 'Open with external viewer (for images)').hideHelp())
|
|
16
|
+
.option('-r, --raw', 'Display raw Markdown')
|
|
17
17
|
.action(async (name, options) => {
|
|
18
18
|
try {
|
|
19
19
|
const sheet = await (0, storage_1.getSheet)(name);
|
|
20
20
|
if (!sheet) {
|
|
21
|
-
console.error(chalk_1.default.red(
|
|
21
|
+
console.error(chalk_1.default.red(`Error: Sheet "${name}" not found`));
|
|
22
22
|
process.exit(1);
|
|
23
23
|
}
|
|
24
24
|
if (sheet.type === 'text') {
|
|
@@ -32,18 +32,18 @@ exports.showCommand = new commander_1.Command('show')
|
|
|
32
32
|
}
|
|
33
33
|
else {
|
|
34
34
|
const filePath = (0, storage_1.getSheetFilePath)(sheet);
|
|
35
|
-
console.log(chalk_1.default.cyan(
|
|
35
|
+
console.log(chalk_1.default.cyan(`Image file: ${filePath}`));
|
|
36
36
|
if (options.open) {
|
|
37
37
|
await (0, open_1.default)(filePath);
|
|
38
|
-
console.log(chalk_1.default.green('
|
|
38
|
+
console.log(chalk_1.default.green('Opened with external viewer'));
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
41
|
-
console.log(chalk_1.default.gray('--open
|
|
41
|
+
console.log(chalk_1.default.gray('Use --open option to open with external viewer'));
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
catch (error) {
|
|
46
|
-
console.error(chalk_1.default.red(
|
|
46
|
+
console.error(chalk_1.default.red(`Error: ${error.message}`));
|
|
47
47
|
process.exit(1);
|
|
48
48
|
}
|
|
49
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA4C;AAC5C,kDAA0B;AAC1B,gDAAwB;AACxB,4CAA8E;AAC9E,8CAAiD;AAEpC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA4C;AAC5C,kDAA0B;AAC1B,gDAAwB;AACxB,4CAA8E;AAC9E,8CAAiD;AAEpC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,6BAA6B,CAAC;KAC1C,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;KAC5C,SAAS,CAAC,IAAI,kBAAM,CAAC,YAAY,EAAE,wCAAwC,CAAC,CAAC,QAAQ,EAAE,CAAC;KACxF,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC;KAC3C,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,OAA0C,EAAE,EAAE;IACzE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,IAAA,yBAAc,EAAC,OAAO,CAAC,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC,CAAC;YAEnD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,IAAA,cAAI,EAAC,QAAQ,CAAC,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ const storage_1 = require("./lib/storage");
|
|
|
12
12
|
const program = new commander_1.Command();
|
|
13
13
|
program
|
|
14
14
|
.name('cs')
|
|
15
|
-
.description('
|
|
15
|
+
.description('A CLI tool to save and manage cheatsheets for commands and tools locally')
|
|
16
16
|
.version('1.0.0');
|
|
17
17
|
// コマンドを登録
|
|
18
18
|
program.addCommand(add_1.addCommand);
|
|
@@ -30,7 +30,7 @@ const main = async () => {
|
|
|
30
30
|
program.parse(process.argv);
|
|
31
31
|
};
|
|
32
32
|
main().catch((error) => {
|
|
33
|
-
console.error('
|
|
33
|
+
console.error('Unexpected error:', error.message);
|
|
34
34
|
process.exit(1);
|
|
35
35
|
});
|
|
36
36
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AACpC,wCAA4C;AAC5C,0CAA8C;AAC9C,0CAA8C;AAC9C,8CAAkD;AAClD,0CAA8C;AAC9C,8CAAkD;AAClD,8CAAkD;AAClD,2CAA4C;AAE5C,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,IAAI,CAAC;KACV,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AACpC,wCAA4C;AAC5C,0CAA8C;AAC9C,0CAA8C;AAC9C,8CAAkD;AAClD,0CAA8C;AAC9C,8CAAkD;AAClD,8CAAkD;AAClD,2CAA4C;AAE5C,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,IAAI,CAAC;KACV,WAAW,CAAC,0EAA0E,CAAC;KACvF,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,UAAU;AACV,OAAO,CAAC,UAAU,CAAC,gBAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,kBAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,kBAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,sBAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,kBAAW,CAAC,CAAC;AAChC,OAAO,CAAC,UAAU,CAAC,sBAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,sBAAa,CAAC,CAAC;AAElC,QAAQ;AACR,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,YAAY;IACZ,MAAM,IAAA,qBAAW,GAAE,CAAC;IAEpB,WAAW;IACX,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|