kibela-api-client 0.1.8 → 0.2.0
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.md +134 -142
- package/dist/cli/_error-handler.d.ts.map +1 -1
- package/dist/cli/_error-handler.js +5 -8
- package/dist/cli/_error-handler.js.map +1 -1
- package/dist/cli/_validators.d.ts +15 -38
- package/dist/cli/_validators.d.ts.map +1 -1
- package/dist/cli/_validators.js +148 -49
- package/dist/cli/_validators.js.map +1 -1
- package/dist/cli/commands/all.d.ts +3 -0
- package/dist/cli/commands/all.d.ts.map +1 -0
- package/dist/cli/commands/all.js +59 -0
- package/dist/cli/commands/all.js.map +1 -0
- package/dist/cli/commands/config.d.ts +6 -2
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/config.js +67 -62
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/get.d.ts +3 -0
- package/dist/cli/commands/get.d.ts.map +1 -0
- package/dist/cli/commands/get.js +152 -0
- package/dist/cli/commands/get.js.map +1 -0
- package/dist/cli/commands/groups-simple.d.ts +3 -0
- package/dist/cli/commands/groups-simple.d.ts.map +1 -0
- package/dist/cli/commands/groups-simple.js +39 -0
- package/dist/cli/commands/groups-simple.js.map +1 -0
- package/dist/cli/commands/new.d.ts +3 -0
- package/dist/cli/commands/new.d.ts.map +1 -0
- package/dist/cli/commands/new.js +168 -0
- package/dist/cli/commands/new.js.map +1 -0
- package/dist/cli/commands/set.d.ts +3 -0
- package/dist/cli/commands/set.d.ts.map +1 -0
- package/dist/cli/commands/set.js +96 -0
- package/dist/cli/commands/set.js.map +1 -0
- package/dist/cli/commands/sync.d.ts +3 -0
- package/dist/cli/commands/sync.d.ts.map +1 -0
- package/dist/cli/commands/sync.js +143 -0
- package/dist/cli/commands/sync.js.map +1 -0
- package/dist/cli/commands/users-simple.d.ts +3 -0
- package/dist/cli/commands/users-simple.d.ts.map +1 -0
- package/dist/cli/commands/users-simple.js +61 -0
- package/dist/cli/commands/users-simple.js.map +1 -0
- package/dist/cli/commands/users.d.ts +2 -2
- package/dist/cli/commands/users.d.ts.map +1 -1
- package/dist/cli/commands/users.js +50 -65
- package/dist/cli/commands/users.js.map +1 -1
- package/dist/cli/config.js +7 -7
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/index.js +29 -13
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/utils/frontmatter.d.ts +3 -0
- package/dist/cli/utils/frontmatter.d.ts.map +1 -0
- package/dist/cli/utils/frontmatter.js +89 -0
- package/dist/cli/utils/frontmatter.js.map +1 -0
- package/dist/cli/utils.d.ts +2 -2
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +7 -13
- package/dist/cli/utils.js.map +1 -1
- package/dist/client/index.js +2 -2
- package/dist/client/index.js.map +1 -1
- package/dist/core/cli/command.d.ts +45 -0
- package/dist/core/cli/command.d.ts.map +1 -0
- package/dist/core/cli/command.js +237 -0
- package/dist/core/cli/command.js.map +1 -0
- package/dist/core/env.d.ts +9 -0
- package/dist/core/env.d.ts.map +1 -0
- package/dist/core/env.js +96 -0
- package/dist/core/env.js.map +1 -0
- package/dist/core/graphql/client.d.ts +29 -0
- package/dist/core/graphql/client.d.ts.map +1 -0
- package/dist/core/graphql/client.js +41 -0
- package/dist/core/graphql/client.js.map +1 -0
- package/dist/core/http/client.d.ts +16 -0
- package/dist/core/http/client.d.ts.map +1 -0
- package/dist/core/http/client.js +87 -0
- package/dist/core/http/client.js.map +1 -0
- package/dist/core/index.d.ts +9 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +25 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/terminal/colors.d.ts +29 -0
- package/dist/core/terminal/colors.d.ts.map +1 -0
- package/dist/core/terminal/colors.js +66 -0
- package/dist/core/terminal/colors.js.map +1 -0
- package/dist/core/terminal/prompt.d.ts +22 -0
- package/dist/core/terminal/prompt.d.ts.map +1 -0
- package/dist/core/terminal/prompt.js +189 -0
- package/dist/core/terminal/prompt.js.map +1 -0
- package/dist/core/terminal/spinner.d.ts +17 -0
- package/dist/core/terminal/spinner.d.ts.map +1 -0
- package/dist/core/terminal/spinner.js +79 -0
- package/dist/core/terminal/spinner.js.map +1 -0
- package/dist/core/validation/validator.d.ts +26 -0
- package/dist/core/validation/validator.d.ts.map +1 -0
- package/dist/core/validation/validator.js +100 -0
- package/dist/core/validation/validator.js.map +1 -0
- package/dist/queries/notes.d.ts +10 -1
- package/dist/queries/notes.d.ts.map +1 -1
- package/dist/queries/notes.js +13 -13
- package/dist/queries/notes.js.map +1 -1
- package/dist/sync/frontmatter.d.ts +30 -0
- package/dist/sync/frontmatter.d.ts.map +1 -0
- package/dist/sync/frontmatter.js +123 -0
- package/dist/sync/frontmatter.js.map +1 -0
- package/dist/sync/index.d.ts +3 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +19 -0
- package/dist/sync/index.js.map +1 -0
- package/dist/sync/sync-client.d.ts +17 -0
- package/dist/sync/sync-client.d.ts.map +1 -0
- package/dist/sync/sync-client.js +158 -0
- package/dist/sync/sync-client.js.map +1 -0
- package/package.json +2 -12
package/README.md
CHANGED
@@ -3,170 +3,132 @@
|
|
3
3
|
[](https://www.npmjs.com/package/kibela-api-client)
|
4
4
|
[](https://www.npmjs.com/package/kibela-api-client)
|
5
5
|
[](https://www.npmjs.com/package/kibela-api-client)
|
6
|
-
[](https://www.npmjs.com/package/kibela-api-client?activeTab=dependencies)
|
7
7
|
[](https://opensource.org/licenses/MIT)
|
8
8
|
[](https://www.typescriptlang.org/)
|
9
9
|
[](https://nodejs.org)
|
10
10
|
|
11
|
-
|
11
|
+
Kibela API用の非公式TypeScriptクライアントライブラリ - ゼロ依存、フル機能CLI付き
|
12
12
|
|
13
|
-
|
13
|
+
**注意**: これはKibelaの非公式クライアントライブラリです。Kibelaのサービス提供者による公式サポートはありません。
|
14
14
|
|
15
|
-
|
16
|
-
- 🔧 **CLI Tool**: Powerful command-line interface for common operations
|
17
|
-
- 🔐 **Secure**: API key management with environment variable support
|
18
|
-
- 📝 **Complete API Coverage**: Notes, users, groups, and more
|
19
|
-
- ⚡ **Lightweight**: Minimal dependencies, optimized bundle size
|
20
|
-
- 🌐 **GraphQL**: Direct GraphQL API integration
|
15
|
+
[English Version](./README_EN.md)
|
21
16
|
|
22
|
-
##
|
17
|
+
## 特徴
|
18
|
+
|
19
|
+
- 🚀 **型安全**: 完全なTypeScriptサポートと型定義
|
20
|
+
- 🔧 **CLIツール**: 一般的な操作のための強力なコマンドラインインターフェース
|
21
|
+
- 🔐 **セキュア**: 環境変数対応のAPIキー管理
|
22
|
+
- 📝 **完全なAPIカバレッジ**: ノート、ユーザー、グループなど
|
23
|
+
- ⚡ **外部依存ゼロ**: Node.js標準モジュールのみを使用
|
24
|
+
- 🌐 **GraphQL**: 直接的なGraphQL API統合
|
25
|
+
- 🔄 **ローカル管理**: ローカルファイルとKibelaの効率的な同期
|
26
|
+
- 📄 **Frontmatter対応**: YAMLメタデータ付きMarkdownファイルの完全サポート
|
27
|
+
|
28
|
+
## インストール
|
23
29
|
|
24
30
|
```bash
|
25
31
|
# npm
|
26
|
-
npm install kibela-api-client
|
32
|
+
npm install -g kibela-api-client
|
27
33
|
|
28
34
|
# yarn
|
29
|
-
yarn add kibela-api-client
|
35
|
+
yarn global add kibela-api-client
|
30
36
|
|
31
37
|
# pnpm
|
32
|
-
pnpm add kibela-api-client
|
38
|
+
pnpm add -g kibela-api-client
|
33
39
|
|
34
|
-
#
|
35
|
-
npm install
|
40
|
+
# ローカルプロジェクト
|
41
|
+
npm install kibela-api-client
|
36
42
|
```
|
37
43
|
|
38
|
-
##
|
44
|
+
## クイックスタート
|
39
45
|
|
40
|
-
###
|
46
|
+
### ライブラリとして使用
|
41
47
|
|
42
48
|
```typescript
|
43
49
|
import { createClient } from 'kibela-api-client';
|
44
50
|
|
45
|
-
//
|
51
|
+
// クライアントインスタンスの作成
|
46
52
|
const kibela = createClient({
|
47
53
|
team: 'your-team-name',
|
48
|
-
token: process.env.
|
54
|
+
token: process.env.KIBELA_TOKEN
|
49
55
|
});
|
50
56
|
|
51
|
-
//
|
57
|
+
// ノートの作成
|
52
58
|
const note = await kibela.notes.create({
|
53
|
-
title: '
|
54
|
-
content: '#
|
59
|
+
title: 'ミーティングノート',
|
60
|
+
content: '# 今日のトピック\n\n- プロジェクトの更新\n- 次のステップ',
|
55
61
|
coediting: true,
|
56
|
-
groupIds: ['
|
62
|
+
groupIds: ['<グループID>']
|
57
63
|
});
|
58
64
|
|
59
|
-
//
|
60
|
-
const results = await kibela.notes.search('
|
65
|
+
// ノートの検索
|
66
|
+
const results = await kibela.notes.search('プロジェクト更新');
|
61
67
|
|
62
|
-
//
|
68
|
+
// 現在のユーザー情報の取得
|
63
69
|
const user = await kibela.users.getCurrentUser();
|
64
70
|
```
|
65
71
|
|
66
|
-
### CLI
|
67
|
-
|
68
|
-
#### Configuration
|
69
|
-
|
70
|
-
The CLI supports multiple configuration methods with the following priority:
|
72
|
+
### CLI使用方法
|
71
73
|
|
72
|
-
|
73
|
-
2. Environment variables
|
74
|
-
3. `.env` file in current directory
|
74
|
+
#### 設定
|
75
75
|
|
76
76
|
```bash
|
77
|
-
#
|
77
|
+
# 対話的セットアップ
|
78
78
|
kibela config
|
79
79
|
|
80
|
-
#
|
80
|
+
# 直接設定
|
81
81
|
kibela config --team your-team --token your-api-token
|
82
82
|
|
83
|
-
#
|
83
|
+
# 環境変数で設定
|
84
84
|
export KIBELA_TEAM=your-team
|
85
|
-
export
|
86
|
-
|
87
|
-
# Or use .env file
|
88
|
-
echo "KIBELA_TEAM=your-team" >> .env
|
89
|
-
echo "KIBELA_API_KEY=your-api-token" >> .env
|
85
|
+
export KIBELA_TOKEN=your-api-token
|
90
86
|
```
|
91
87
|
|
92
|
-
####
|
93
|
-
|
94
|
-
##### Notes Management
|
88
|
+
#### 基本コマンド
|
95
89
|
|
96
90
|
```bash
|
97
|
-
#
|
98
|
-
kibela
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
kibela
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
kibela
|
114
|
-
|
115
|
-
# Create a note from markdown file
|
116
|
-
kibela notes create --markdown note.md --groups GROUP_ID
|
117
|
-
|
118
|
-
# Create a note in a specific folder
|
119
|
-
kibela notes create --markdown note.md --groups GROUP_ID --folder "specs"
|
120
|
-
|
121
|
-
# Get a specific note
|
122
|
-
kibela notes get <note-id>
|
123
|
-
|
124
|
-
# Save note content to file
|
125
|
-
kibela notes get <note-id> --output output.md
|
126
|
-
|
127
|
-
# Show HTML content instead of markdown
|
128
|
-
kibela notes get <note-id> --html
|
129
|
-
|
130
|
-
# Update a note
|
131
|
-
kibela notes update <note-id> --title "New Title" --content "New Content"
|
132
|
-
|
133
|
-
# Update a note from markdown file
|
134
|
-
kibela notes update <note-id> --markdown updated.md
|
135
|
-
|
136
|
-
# Delete a note
|
137
|
-
kibela notes delete <note-id>
|
91
|
+
# 全ノートの取得
|
92
|
+
kibela all # ローカルにダウンロード
|
93
|
+
kibela all --list # 一覧表示のみ
|
94
|
+
kibela all -l 20 # 20件のみ
|
95
|
+
|
96
|
+
# 特定ノートの取得
|
97
|
+
kibela get <ノートID> # ID指定(タイトルがファイル名に)
|
98
|
+
kibela get <ID> --frontmatter # フロントマター付きで保存
|
99
|
+
kibela get --group <ID> # グループ指定
|
100
|
+
|
101
|
+
# ノートの更新
|
102
|
+
kibela set notes/123.md # ファイルから更新
|
103
|
+
kibela set --id <ID> --title "新タイトル"
|
104
|
+
|
105
|
+
# ノートの新規作成
|
106
|
+
kibela new # 対話的に作成
|
107
|
+
kibela new --file note.md # ファイルから作成
|
108
|
+
kibela new --title "タイトル" --content "内容"
|
138
109
|
```
|
139
110
|
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
kibela
|
145
|
-
kibela groups --all # Show all groups without pagination
|
146
|
-
|
147
|
-
# List users
|
148
|
-
kibela users list
|
149
|
-
kibela users list --all # Show all users
|
150
|
-
|
151
|
-
# Get current user info
|
152
|
-
kibela users me
|
153
|
-
```
|
111
|
+
# シンプルなコマンド体系
|
112
|
+
kibela all # 全ノートをローカルにダウンロード
|
113
|
+
kibela get --search "検索" # ノートを検索・取得
|
114
|
+
kibela set notes/123.md # 既存ノートを更新
|
115
|
+
kibela new --file note.md # 新規ノートを作成
|
154
116
|
|
155
|
-
## API
|
117
|
+
## APIリファレンス
|
156
118
|
|
157
|
-
###
|
119
|
+
### クライアント作成
|
158
120
|
|
159
121
|
```typescript
|
160
122
|
const kibela = createClient({
|
161
|
-
team: string, //
|
162
|
-
token: string //
|
123
|
+
team: string, // あなたのKibelaチーム名
|
124
|
+
token: string // あなたのAPIトークン
|
163
125
|
});
|
164
126
|
```
|
165
127
|
|
166
128
|
### Notes API
|
167
129
|
|
168
130
|
```typescript
|
169
|
-
//
|
131
|
+
// ノートの作成
|
170
132
|
kibela.notes.create({
|
171
133
|
title: string,
|
172
134
|
content: string,
|
@@ -179,7 +141,7 @@ kibela.notes.create({
|
|
179
141
|
}>
|
180
142
|
})
|
181
143
|
|
182
|
-
//
|
144
|
+
// ノートの更新
|
183
145
|
kibela.notes.update(id: string, {
|
184
146
|
title?: string,
|
185
147
|
content?: string,
|
@@ -188,13 +150,13 @@ kibela.notes.update(id: string, {
|
|
188
150
|
draft?: boolean
|
189
151
|
})
|
190
152
|
|
191
|
-
//
|
153
|
+
// ノートの削除
|
192
154
|
kibela.notes.delete(id: string)
|
193
155
|
|
194
|
-
//
|
156
|
+
// IDでノートを取得
|
195
157
|
kibela.notes.get(id: string)
|
196
158
|
|
197
|
-
//
|
159
|
+
// ページネーション付きノート一覧
|
198
160
|
kibela.notes.list({
|
199
161
|
first?: number,
|
200
162
|
after?: string,
|
@@ -204,7 +166,7 @@ kibela.notes.list({
|
|
204
166
|
}
|
205
167
|
})
|
206
168
|
|
207
|
-
//
|
169
|
+
// ノートの検索
|
208
170
|
kibela.notes.search(query: string, {
|
209
171
|
first?: number,
|
210
172
|
after?: string
|
@@ -214,89 +176,119 @@ kibela.notes.search(query: string, {
|
|
214
176
|
### Groups API
|
215
177
|
|
216
178
|
```typescript
|
217
|
-
//
|
179
|
+
// グループ一覧
|
218
180
|
kibela.groups.list({
|
219
181
|
first?: number,
|
220
182
|
after?: string
|
221
183
|
})
|
222
184
|
|
223
|
-
//
|
185
|
+
// IDでグループを取得
|
224
186
|
kibela.groups.get(id: string)
|
225
187
|
|
226
|
-
//
|
188
|
+
// 全グループを取得(ページネーションなし)
|
227
189
|
kibela.groups.getAll()
|
228
190
|
```
|
229
191
|
|
230
192
|
### Users API
|
231
193
|
|
232
194
|
```typescript
|
233
|
-
//
|
195
|
+
// ユーザー一覧
|
234
196
|
kibela.users.list({
|
235
197
|
first?: number,
|
236
198
|
after?: string
|
237
199
|
})
|
238
200
|
|
239
|
-
//
|
201
|
+
// 現在のユーザーを取得
|
240
202
|
kibela.users.getCurrentUser()
|
241
203
|
|
242
|
-
//
|
204
|
+
// 全ユーザーを取得(ページネーションなし)
|
243
205
|
kibela.users.getAll()
|
244
206
|
```
|
245
207
|
|
246
|
-
##
|
208
|
+
## 環境変数
|
247
209
|
|
248
|
-
- `KIBELA_TEAM`:
|
249
|
-
- `
|
210
|
+
- `KIBELA_TEAM`: あなたのKibelaチーム名
|
211
|
+
- `KIBELA_TOKEN`: あなたのAPIトークン
|
250
212
|
|
251
|
-
##
|
213
|
+
## セキュリティ
|
252
214
|
|
253
|
-
- API
|
254
|
-
-
|
255
|
-
-
|
256
|
-
-
|
215
|
+
- APIトークンはログに記録されたり、完全に表示されることはありません
|
216
|
+
- トークンはCLI出力でマスクされます(最初の4文字と最後の4文字のみ表示)
|
217
|
+
- ローカル開発用の`.env`ファイルをサポート
|
218
|
+
- CLI設定用にユーザーホームディレクトリに安全に保存
|
257
219
|
|
258
|
-
##
|
220
|
+
## エラーハンドリング
|
259
221
|
|
260
|
-
|
222
|
+
ライブラリは特定のエラーコードと共に詳細なエラーメッセージを提供します:
|
261
223
|
|
262
224
|
```typescript
|
263
225
|
try {
|
264
226
|
await kibela.notes.create({ title: '', content: '' });
|
265
227
|
} catch (error) {
|
266
228
|
if (error.code === 'AUTH_ERROR') {
|
267
|
-
//
|
229
|
+
// 認証エラーの処理
|
268
230
|
} else if (error.code === 'VALIDATION_ERROR') {
|
269
|
-
//
|
231
|
+
// バリデーションエラーの処理
|
270
232
|
}
|
271
233
|
}
|
272
234
|
```
|
273
235
|
|
274
|
-
##
|
236
|
+
## 開発
|
275
237
|
|
276
238
|
```bash
|
277
|
-
#
|
239
|
+
# 依存関係のインストール
|
278
240
|
npm install
|
279
241
|
|
280
|
-
#
|
242
|
+
# プロジェクトのビルド
|
281
243
|
npm run build
|
282
244
|
|
283
|
-
#
|
245
|
+
# 開発モードでCLIを実行
|
284
246
|
npm run dev
|
285
247
|
|
286
|
-
#
|
248
|
+
# テストの実行
|
287
249
|
npm test
|
288
250
|
```
|
289
251
|
|
290
|
-
##
|
252
|
+
## 制限事項
|
253
|
+
|
254
|
+
- **検索機能**: Kibela APIの制限により、検索機能(`--search`)は現在利用できません
|
255
|
+
- 代替方法: `kibela all --list | grep "検索語"` または グループ指定での取得
|
256
|
+
|
257
|
+
## 外部依存ゼロの実装
|
258
|
+
|
259
|
+
このライブラリは外部依存を一切使用せず、Node.js標準モジュールのみで実装されています:
|
260
|
+
|
261
|
+
- HTTPクライアント: Node.js標準の`https`モジュール
|
262
|
+
- CLIフレームワーク: 自前実装
|
263
|
+
- ターミナル装飾: ANSIエスケープコード直接使用
|
264
|
+
- バリデーション: 軽量な自前実装
|
265
|
+
- 環境変数: `process.env`直接使用
|
266
|
+
|
267
|
+
これにより、セキュリティリスクを最小化し、バンドルサイズを削減しています。
|
268
|
+
|
269
|
+
## シンプルなコマンド体系
|
270
|
+
|
271
|
+
直感的な4つのコマンドでKibelaを操作:
|
272
|
+
|
273
|
+
- **all**: 全ノートの一括取得・ダウンロード
|
274
|
+
- **get**: 特定ノートの取得・検索
|
275
|
+
- **set**: 既存ノートの更新
|
276
|
+
- **new**: 新規ノートの作成
|
277
|
+
|
278
|
+
各コマンドは`--dir`オプションでローカルファイル管理もサポートします。
|
279
|
+
|
280
|
+
詳細な使用方法は[USAGE.md](./USAGE.md)をご覧ください。
|
281
|
+
|
282
|
+
## コントリビュート
|
291
283
|
|
292
|
-
|
284
|
+
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
|
293
285
|
|
294
|
-
1.
|
295
|
-
2.
|
296
|
-
3.
|
297
|
-
4.
|
298
|
-
5.
|
286
|
+
1. リポジトリをフォーク
|
287
|
+
2. フィーチャーブランチを作成(`git checkout -b feature/amazing-feature`)
|
288
|
+
3. 変更をコミット(`git commit -m 'Add some amazing feature'`)
|
289
|
+
4. ブランチにプッシュ(`git push origin feature/amazing-feature`)
|
290
|
+
5. プルリクエストを開く
|
299
291
|
|
300
|
-
##
|
292
|
+
## ライセンス
|
301
293
|
|
302
|
-
MIT
|
294
|
+
MIT © [Se1ya0hara](https://github.com/Se1ya0hara)
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"_error-handler.d.ts","sourceRoot":"","sources":["../../src/cli/_error-handler.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"_error-handler.d.ts","sourceRoot":"","sources":["../../src/cli/_error-handler.ts"],"names":[],"mappings":"AAYA,qBAAa,WAAY,SAAQ,KAAK;IAG3B,IAAI,CAAC,EAAE,MAAM;IACb,OAAO,CAAC,EAAE,GAAG;gBAFpB,OAAO,EAAE,MAAM,EACR,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,OAAO,CAAC,EAAE,GAAG,YAAA;CAKvB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAsDpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,GAAG,IAAI,CAiB7D;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,IAC7B,GAAG,MAAM,GAAG,EAAE,mBAW7B"}
|
@@ -1,13 +1,10 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
-
};
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
3
|
exports.KibelaError = void 0;
|
7
4
|
exports.handleGraphQLError = handleGraphQLError;
|
8
5
|
exports.displayError = displayError;
|
9
6
|
exports.wrapAsyncCommand = wrapAsyncCommand;
|
10
|
-
const
|
7
|
+
const colors_1 = require("../core/terminal/colors");
|
11
8
|
class KibelaError extends Error {
|
12
9
|
constructor(message, code, details) {
|
13
10
|
super(message);
|
@@ -44,16 +41,16 @@ function handleGraphQLError(error) {
|
|
44
41
|
throw new KibelaError(error.message || 'An unexpected error occurred', 'UNKNOWN_ERROR', error);
|
45
42
|
}
|
46
43
|
function displayError(error) {
|
47
|
-
console.error(
|
44
|
+
console.error(colors_1.colors.red('✖'), colors_1.colors.bold('Error:'), error.message);
|
48
45
|
if (error instanceof KibelaError) {
|
49
46
|
if (error.code === 'AUTH_ERROR') {
|
50
|
-
console.error(
|
47
|
+
console.error(colors_1.colors.dim('\nPlease run "kibela config" to update your credentials.'));
|
51
48
|
}
|
52
49
|
else if (error.code === 'NETWORK_ERROR') {
|
53
|
-
console.error(
|
50
|
+
console.error(colors_1.colors.dim('\nCheck your internet connection and team name.'));
|
54
51
|
}
|
55
52
|
if (process.env.DEBUG && error.details) {
|
56
|
-
console.error(
|
53
|
+
console.error(colors_1.colors.dim('\nDebug details:'));
|
57
54
|
console.error(error.details);
|
58
55
|
}
|
59
56
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"_error-handler.js","sourceRoot":"","sources":["../../src/cli/_error-handler.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"_error-handler.js","sourceRoot":"","sources":["../../src/cli/_error-handler.ts"],"names":[],"mappings":"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"}
|
@@ -1,44 +1,21 @@
|
|
1
|
-
import {
|
2
|
-
export declare const ConfigSchema:
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
export declare const
|
7
|
-
|
8
|
-
content: z.ZodString;
|
9
|
-
coediting: z.ZodOptional<z.ZodBoolean>;
|
10
|
-
groupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
11
|
-
draft: z.ZodOptional<z.ZodBoolean>;
|
12
|
-
}, z.core.$strip>;
|
13
|
-
export declare const UpdateNoteInputSchema: z.ZodObject<{
|
14
|
-
title: z.ZodOptional<z.ZodString>;
|
15
|
-
content: z.ZodOptional<z.ZodString>;
|
16
|
-
coediting: z.ZodOptional<z.ZodBoolean>;
|
17
|
-
groupIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
18
|
-
draft: z.ZodOptional<z.ZodBoolean>;
|
19
|
-
}, z.core.$strip>;
|
20
|
-
export declare const EnvSchema: z.ZodObject<{
|
21
|
-
KIBELA_TEAM: z.ZodOptional<z.ZodString>;
|
22
|
-
KIBELA_TOKEN: z.ZodOptional<z.ZodString>;
|
23
|
-
KIBELA_API_KEY: z.ZodOptional<z.ZodString>;
|
24
|
-
}, z.core.$strip>;
|
25
|
-
export declare const NoteResponseSchema: z.ZodObject<{
|
26
|
-
id: z.ZodString;
|
27
|
-
title: z.ZodString;
|
28
|
-
content: z.ZodString;
|
29
|
-
url: z.ZodString;
|
30
|
-
}, z.core.$strip>;
|
31
|
-
export declare const ErrorResponseSchema: z.ZodObject<{
|
32
|
-
errors: z.ZodArray<z.ZodObject<{
|
33
|
-
message: z.ZodString;
|
34
|
-
extensions: z.ZodOptional<z.ZodObject<{
|
35
|
-
code: z.ZodOptional<z.ZodString>;
|
36
|
-
}, z.core.$strip>>;
|
37
|
-
}, z.core.$strip>>;
|
38
|
-
}, z.core.$strip>;
|
1
|
+
import { Schema } from '../core/validation/validator';
|
2
|
+
export declare const ConfigSchema: Schema;
|
3
|
+
export declare const CreateNoteInputSchema: Schema;
|
4
|
+
export declare const UpdateNoteInputSchema: Schema;
|
5
|
+
export declare const EnvSchema: Schema;
|
6
|
+
export declare const NoteResponseSchema: Schema;
|
7
|
+
export declare const ErrorResponseSchema: Schema;
|
39
8
|
export declare function validateConfig(team?: string, token?: string): {
|
40
9
|
isValid: boolean;
|
41
10
|
error?: string;
|
42
11
|
};
|
12
|
+
export declare function validateUpdateNoteInput(data: any): {
|
13
|
+
isValid: boolean;
|
14
|
+
error?: string;
|
15
|
+
};
|
16
|
+
export declare function validateEnv(env: any): {
|
17
|
+
isValid: boolean;
|
18
|
+
error?: string;
|
19
|
+
};
|
43
20
|
export declare function sanitizeToken(token: string): string;
|
44
21
|
//# sourceMappingURL=_validators.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"_validators.d.ts","sourceRoot":"","sources":["../../src/cli/_validators.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"_validators.d.ts","sourceRoot":"","sources":["../../src/cli/_validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGjE,eAAO,MAAM,YAAY,EAAE,MAa1B,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,MA0BnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAwBnC,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,MASvB,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE,MAiBhC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAwBjC,CAAC;AAGF,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAYlG;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAevF;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAW1E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKnD"}
|