kibela-api-client 0.2.0 → 0.2.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.
Files changed (74) hide show
  1. package/dist/cli/_validators.d.ts.map +1 -1
  2. package/dist/cli/_validators.js +13 -19
  3. package/dist/cli/_validators.js.map +1 -1
  4. package/dist/cli/commands/all.d.ts +1 -1
  5. package/dist/cli/commands/all.d.ts.map +1 -1
  6. package/dist/cli/commands/all.js +1 -1
  7. package/dist/cli/commands/all.js.map +1 -1
  8. package/dist/cli/commands/config.d.ts +1 -1
  9. package/dist/cli/commands/config.d.ts.map +1 -1
  10. package/dist/cli/commands/get.d.ts +1 -1
  11. package/dist/cli/commands/get.d.ts.map +1 -1
  12. package/dist/cli/commands/groups-simple.d.ts +1 -1
  13. package/dist/cli/commands/groups-simple.d.ts.map +1 -1
  14. package/dist/cli/commands/new.d.ts +1 -1
  15. package/dist/cli/commands/new.d.ts.map +1 -1
  16. package/dist/cli/commands/new.js +1 -1
  17. package/dist/cli/commands/new.js.map +1 -1
  18. package/dist/cli/commands/set.d.ts +1 -1
  19. package/dist/cli/commands/set.d.ts.map +1 -1
  20. package/dist/cli/commands/set.js +1 -1
  21. package/dist/cli/commands/set.js.map +1 -1
  22. package/dist/cli/commands/users.d.ts +1 -1
  23. package/dist/cli/commands/users.d.ts.map +1 -1
  24. package/dist/cli/core/command.d.ts +45 -0
  25. package/dist/cli/core/command.d.ts.map +1 -0
  26. package/dist/cli/core/command.js +237 -0
  27. package/dist/cli/core/command.js.map +1 -0
  28. package/dist/cli/index.js +2 -2
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/cli/sync/frontmatter.d.ts +30 -0
  31. package/dist/cli/sync/frontmatter.d.ts.map +1 -0
  32. package/dist/cli/sync/frontmatter.js +123 -0
  33. package/dist/cli/sync/frontmatter.js.map +1 -0
  34. package/dist/cli/sync/index.d.ts +3 -0
  35. package/dist/cli/sync/index.d.ts.map +1 -0
  36. package/dist/cli/sync/index.js +19 -0
  37. package/dist/cli/sync/index.js.map +1 -0
  38. package/dist/cli/sync/sync-client.d.ts +17 -0
  39. package/dist/cli/sync/sync-client.d.ts.map +1 -0
  40. package/dist/cli/sync/sync-client.js +158 -0
  41. package/dist/cli/sync/sync-client.js.map +1 -0
  42. package/dist/cli/utils/index.d.ts +12 -0
  43. package/dist/cli/utils/index.d.ts.map +1 -0
  44. package/dist/cli/utils/index.js +58 -0
  45. package/dist/cli/utils/index.js.map +1 -0
  46. package/dist/core/index.d.ts +0 -1
  47. package/dist/core/index.d.ts.map +1 -1
  48. package/dist/core/index.js +0 -1
  49. package/dist/core/index.js.map +1 -1
  50. package/package.json +1 -1
  51. package/dist/cli/commands/groups.d.ts +0 -3
  52. package/dist/cli/commands/groups.d.ts.map +0 -1
  53. package/dist/cli/commands/groups.js +0 -57
  54. package/dist/cli/commands/groups.js.map +0 -1
  55. package/dist/cli/commands/notes.d.ts +0 -3
  56. package/dist/cli/commands/notes.d.ts.map +0 -1
  57. package/dist/cli/commands/notes.js +0 -432
  58. package/dist/cli/commands/notes.js.map +0 -1
  59. package/dist/cli/commands/stats.d.ts +0 -3
  60. package/dist/cli/commands/stats.d.ts.map +0 -1
  61. package/dist/cli/commands/stats.js +0 -71
  62. package/dist/cli/commands/stats.js.map +0 -1
  63. package/dist/cli/commands/sync.d.ts +0 -3
  64. package/dist/cli/commands/sync.d.ts.map +0 -1
  65. package/dist/cli/commands/sync.js +0 -143
  66. package/dist/cli/commands/sync.js.map +0 -1
  67. package/dist/cli/commands/test.d.ts +0 -3
  68. package/dist/cli/commands/test.d.ts.map +0 -1
  69. package/dist/cli/commands/test.js +0 -19
  70. package/dist/cli/commands/test.js.map +0 -1
  71. package/dist/cli/commands/users-simple.d.ts +0 -3
  72. package/dist/cli/commands/users-simple.d.ts.map +0 -1
  73. package/dist/cli/commands/users-simple.js +0 -61
  74. package/dist/cli/commands/users-simple.js.map +0 -1
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FrontMatterParser = void 0;
4
+ class FrontMatterParser {
5
+ static parse(text) {
6
+ const lines = text.split('\n');
7
+ if (lines[0] !== '---') {
8
+ // No front matter
9
+ return {
10
+ frontMatter: { title: '' },
11
+ content: text,
12
+ };
13
+ }
14
+ let endIndex = -1;
15
+ for (let i = 1; i < lines.length; i++) {
16
+ if (lines[i] === '---') {
17
+ endIndex = i;
18
+ break;
19
+ }
20
+ }
21
+ if (endIndex === -1) {
22
+ // Invalid front matter
23
+ return {
24
+ frontMatter: { title: '' },
25
+ content: text,
26
+ };
27
+ }
28
+ const yamlContent = lines.slice(1, endIndex).join('\n');
29
+ const frontMatter = this.parseYaml(yamlContent);
30
+ const content = lines.slice(endIndex + 1).join('\n').trim();
31
+ return { frontMatter, content };
32
+ }
33
+ static stringify(document) {
34
+ const yaml = this.stringifyYaml(document.frontMatter);
35
+ return `---\n${yaml}---\n\n${document.content}`;
36
+ }
37
+ static parseYaml(yaml) {
38
+ const result = { title: '' };
39
+ const lines = yaml.split('\n');
40
+ for (const line of lines) {
41
+ const trimmed = line.trim();
42
+ if (!trimmed || trimmed.startsWith('#'))
43
+ continue;
44
+ const colonIndex = trimmed.indexOf(':');
45
+ if (colonIndex === -1)
46
+ continue;
47
+ const key = trimmed.substring(0, colonIndex).trim();
48
+ const value = trimmed.substring(colonIndex + 1).trim();
49
+ if (key === 'groups' || key === 'folders') {
50
+ // Handle arrays
51
+ result[key] = this.parseYamlArray(value);
52
+ }
53
+ else if (key === 'coediting' || key === 'published') {
54
+ // Handle booleans
55
+ result[key] = value === 'true';
56
+ }
57
+ else {
58
+ // Handle strings
59
+ result[key] = this.unquoteString(value);
60
+ }
61
+ }
62
+ return result;
63
+ }
64
+ static stringifyYaml(frontMatter) {
65
+ const lines = [];
66
+ for (const [key, value] of Object.entries(frontMatter)) {
67
+ if (value === undefined || value === null)
68
+ continue;
69
+ if (Array.isArray(value)) {
70
+ if (value.length === 0)
71
+ continue;
72
+ if (key === 'folders' && value[0] && typeof value[0] === 'object') {
73
+ // Handle folders array with objects
74
+ lines.push(`${key}:`);
75
+ for (const folder of value) {
76
+ lines.push(` - groupId: ${this.quoteString(folder.groupId)}`);
77
+ lines.push(` folderName: ${this.quoteString(folder.folderName)}`);
78
+ }
79
+ }
80
+ else {
81
+ // Handle simple arrays
82
+ lines.push(`${key}:`);
83
+ for (const item of value) {
84
+ lines.push(` - ${this.quoteString(String(item))}`);
85
+ }
86
+ }
87
+ }
88
+ else if (typeof value === 'boolean') {
89
+ lines.push(`${key}: ${value}`);
90
+ }
91
+ else {
92
+ lines.push(`${key}: ${this.quoteString(String(value))}`);
93
+ }
94
+ }
95
+ return lines.join('\n') + '\n';
96
+ }
97
+ static parseYamlArray(value) {
98
+ // Simple array parsing - this is a basic implementation
99
+ if (value.startsWith('[') && value.endsWith(']')) {
100
+ const content = value.slice(1, -1);
101
+ return content.split(',').map(item => this.unquoteString(item.trim()));
102
+ }
103
+ return [];
104
+ }
105
+ static quoteString(str) {
106
+ // Quote if contains special characters
107
+ if (str.includes(':') || str.includes('#') || str.includes('\n') ||
108
+ str.includes('"') || str.includes("'") || str.startsWith(' ') ||
109
+ str.endsWith(' ')) {
110
+ return `"${str.replace(/"/g, '\\"')}"`;
111
+ }
112
+ return str;
113
+ }
114
+ static unquoteString(str) {
115
+ if ((str.startsWith('"') && str.endsWith('"')) ||
116
+ (str.startsWith("'") && str.endsWith("'"))) {
117
+ return str.slice(1, -1);
118
+ }
119
+ return str;
120
+ }
121
+ }
122
+ exports.FrontMatterParser = FrontMatterParser;
123
+ //# sourceMappingURL=frontmatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../src/cli/sync/frontmatter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './sync-client';
2
+ export * from './frontmatter';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/sync/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./sync-client"), exports);
18
+ __exportStar(require("./frontmatter"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/sync/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,gDAA8B"}
@@ -0,0 +1,17 @@
1
+ export interface SyncOptions {
2
+ team: string;
3
+ token: string;
4
+ dir?: string;
5
+ }
6
+ export declare class SyncClient {
7
+ private graphqlClient;
8
+ private notesDir;
9
+ constructor(options: SyncOptions);
10
+ private ensureNotesDir;
11
+ pull(): Promise<void>;
12
+ push(filePath: string): Promise<void>;
13
+ publish(content: string): Promise<void>;
14
+ private saveNoteToFile;
15
+ private extractNoteNumber;
16
+ }
17
+ //# sourceMappingURL=sync-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-client.d.ts","sourceRoot":"","sources":["../../../src/cli/sync/sync-client.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,EAAE,WAAW;IAahC,OAAO,CAAC,cAAc;IAMhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCrB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BrC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAkC/B,cAAc;IA4B5B,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SyncClient = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const client_1 = require("../../core/graphql/client");
40
+ const frontmatter_1 = require("./frontmatter");
41
+ const notes_1 = require("../../queries/notes");
42
+ class SyncClient {
43
+ constructor(options) {
44
+ const endpoint = `https://${options.team}.kibe.la/api/v1`;
45
+ this.graphqlClient = new client_1.GraphQLClient(endpoint, {
46
+ headers: {
47
+ Authorization: `Bearer ${options.token}`,
48
+ 'Content-Type': 'application/json',
49
+ },
50
+ });
51
+ this.notesDir = options.dir || process.env.KIBELA_DIR || './notes';
52
+ this.ensureNotesDir();
53
+ }
54
+ ensureNotesDir() {
55
+ if (!fs.existsSync(this.notesDir)) {
56
+ fs.mkdirSync(this.notesDir, { recursive: true });
57
+ }
58
+ }
59
+ async pull() {
60
+ console.log('Pulling notes from Kibela...');
61
+ let hasNextPage = true;
62
+ let cursor;
63
+ let totalNotes = 0;
64
+ while (hasNextPage) {
65
+ const variables = {
66
+ first: 100,
67
+ after: cursor,
68
+ };
69
+ const response = await this.graphqlClient.request(notes_1.notesQueries.list, variables);
70
+ const notes = response.notes.edges.map((edge) => edge.node);
71
+ for (const note of notes) {
72
+ await this.saveNoteToFile(note);
73
+ totalNotes++;
74
+ }
75
+ hasNextPage = response.notes.pageInfo.hasNextPage;
76
+ cursor = response.notes.pageInfo.endCursor;
77
+ }
78
+ console.log(`Pulled ${totalNotes} notes successfully.`);
79
+ }
80
+ async push(filePath) {
81
+ if (!fs.existsSync(filePath)) {
82
+ throw new Error(`File not found: ${filePath}`);
83
+ }
84
+ const content = fs.readFileSync(filePath, 'utf8');
85
+ const parsed = frontmatter_1.FrontMatterParser.parse(content);
86
+ if (!parsed.frontMatter.id) {
87
+ throw new Error('No note ID found in frontmatter. Use publish command for new notes.');
88
+ }
89
+ console.log(`Updating note ${parsed.frontMatter.id}...`);
90
+ const variables = {
91
+ input: {
92
+ id: parsed.frontMatter.id,
93
+ title: parsed.frontMatter.title,
94
+ content: parsed.content,
95
+ coediting: parsed.frontMatter.coediting,
96
+ groupIds: parsed.frontMatter.groups,
97
+ draft: !parsed.frontMatter.published,
98
+ },
99
+ };
100
+ await this.graphqlClient.request(notes_1.notesQueries.update, variables);
101
+ console.log('Note updated successfully.');
102
+ }
103
+ async publish(content) {
104
+ const parsed = frontmatter_1.FrontMatterParser.parse(content);
105
+ if (!parsed.frontMatter.title) {
106
+ throw new Error('Title is required in frontmatter');
107
+ }
108
+ console.log(`Publishing new note: ${parsed.frontMatter.title}...`);
109
+ const variables = {
110
+ input: {
111
+ title: parsed.frontMatter.title,
112
+ content: parsed.content,
113
+ coediting: parsed.frontMatter.coediting ?? true,
114
+ groupIds: parsed.frontMatter.groups || [],
115
+ draft: !parsed.frontMatter.published,
116
+ folders: parsed.frontMatter.folders,
117
+ },
118
+ };
119
+ const response = await this.graphqlClient.request(notes_1.notesQueries.create, variables);
120
+ const note = response.createNote.note;
121
+ // Save the new note locally
122
+ await this.saveNoteToFile(note);
123
+ console.log(`Note published successfully: ${note.id}`);
124
+ console.log(`URL: ${note.url}`);
125
+ }
126
+ async saveNoteToFile(note) {
127
+ const noteNumber = this.extractNoteNumber(note.id);
128
+ const fileName = `${noteNumber}.md`;
129
+ const filePath = path.join(this.notesDir, fileName);
130
+ const document = {
131
+ frontMatter: {
132
+ id: note.id,
133
+ title: note.title,
134
+ coediting: note.coediting,
135
+ published: note.publishedAt !== null,
136
+ groups: note.groups.map((g) => g.id),
137
+ folders: note.folders?.map((f) => ({
138
+ groupId: f.group.id,
139
+ folderName: f.name,
140
+ })) || [],
141
+ author: note.author?.account || 'unknown',
142
+ createdAt: note.createdAt,
143
+ updatedAt: note.contentUpdatedAt,
144
+ url: note.url,
145
+ },
146
+ content: note.content,
147
+ };
148
+ const fileContent = frontmatter_1.FrontMatterParser.stringify(document);
149
+ fs.writeFileSync(filePath, fileContent, 'utf8');
150
+ }
151
+ extractNoteNumber(noteId) {
152
+ // Extract numeric ID from GraphQL ID (e.g., "Note/12345" -> "12345")
153
+ const match = noteId.match(/Note\/(\d+)/);
154
+ return match ? match[1] : noteId;
155
+ }
156
+ }
157
+ exports.SyncClient = SyncClient;
158
+ //# sourceMappingURL=sync-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-client.js","sourceRoot":"","sources":["../../../src/cli/sync/sync-client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,sDAA0D;AAC1D,+CAAkE;AAClE,+CAAmD;AASnD,MAAa,UAAU;IAIrB,YAAY,OAAoB;QAC9B,MAAM,QAAQ,GAAG,WAAW,OAAO,CAAC,IAAI,iBAAiB,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAa,CAAC,QAAQ,EAAE;YAC/C,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,KAAK,EAAE;gBACxC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC;QACnE,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAE5C,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,MAA0B,CAAC;QAC/B,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,OAAO,WAAW,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG;gBAChB,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,MAAM;aACd,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAC/C,oBAAY,CAAC,IAAI,EACjB,SAAS,CACV,CAAC;YAEF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEjE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAChC,UAAU,EAAE,CAAC;YACf,CAAC;YAED,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;YAClD,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC7C,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,UAAU,UAAU,sBAAsB,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB;QACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,+BAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACzF,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG;YAChB,KAAK,EAAE;gBACL,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;gBACzB,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK;gBAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,SAAS;gBACvC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM;gBACnC,KAAK,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS;aACrC;SACF,CAAC;QAEF,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,oBAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAEjE,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe;QAC3B,MAAM,MAAM,GAAG,+BAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,WAAW,CAAC,KAAK,KAAK,CAAC,CAAC;QAEnE,MAAM,SAAS,GAAG;YAChB,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK;gBAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,SAAS,IAAI,IAAI;gBAC/C,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,EAAE;gBACzC,KAAK,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS;gBACpC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO;aACpC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAC/C,oBAAY,CAAC,MAAM,EACnB,SAAS,CACV,CAAC;QAEF,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;QAEtC,4BAA4B;QAC5B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEhC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,IAAS;QACpC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,UAAU,KAAK,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAmB;YAC/B,WAAW,EAAE;gBACX,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,WAAW,KAAK,IAAI;gBACpC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;oBACtC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE;oBACnB,UAAU,EAAE,CAAC,CAAC,IAAI;iBACnB,CAAC,CAAC,IAAI,EAAE;gBACT,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,SAAS;gBACzC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,gBAAgB;gBAChC,GAAG,EAAE,IAAI,CAAC,GAAG;aACd;YACD,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QAEF,MAAM,WAAW,GAAG,+BAAiB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAEO,iBAAiB,CAAC,MAAc;QACtC,qEAAqE;QACrE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACnC,CAAC;CACF;AAxJD,gCAwJC"}
@@ -0,0 +1,12 @@
1
+ import { Spinner } from '../../core/terminal/spinner';
2
+ import { Kibela } from '../../index';
3
+ export declare function success(message: string): void;
4
+ export declare function error(message: string): void;
5
+ export declare function info(message: string): void;
6
+ export declare function warn(message: string): void;
7
+ export declare function createSpinner(text: string): Spinner;
8
+ export declare function getClient(): Kibela;
9
+ export declare function formatDate(dateString: string): string;
10
+ export declare function displayToken(token: string): string;
11
+ export { generateFrontmatter, sanitizeFileName } from './frontmatter';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKrC,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,WAEzC;AAED,wBAAgB,SAAS,IAAI,MAAM,CAoBlC;AAED,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAGD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sanitizeFileName = exports.generateFrontmatter = void 0;
4
+ exports.success = success;
5
+ exports.error = error;
6
+ exports.info = info;
7
+ exports.warn = warn;
8
+ exports.createSpinner = createSpinner;
9
+ exports.getClient = getClient;
10
+ exports.formatDate = formatDate;
11
+ exports.displayToken = displayToken;
12
+ const colors_1 = require("../../core/terminal/colors");
13
+ const spinner_1 = require("../../core/terminal/spinner");
14
+ const index_1 = require("../../index");
15
+ const config_1 = require("../config");
16
+ const _validators_1 = require("../_validators");
17
+ const _error_handler_1 = require("../_error-handler");
18
+ function success(message) {
19
+ console.log(colors_1.colors.green('✔'), message);
20
+ }
21
+ function error(message) {
22
+ console.error(colors_1.colors.red('✖'), message);
23
+ }
24
+ function info(message) {
25
+ console.log(colors_1.colors.blue('ℹ'), message);
26
+ }
27
+ function warn(message) {
28
+ console.log(colors_1.colors.yellow('⚠'), message);
29
+ }
30
+ function createSpinner(text) {
31
+ return new spinner_1.Spinner(text);
32
+ }
33
+ function getClient() {
34
+ const team = config_1.ConfigManager.get('team');
35
+ const token = config_1.ConfigManager.get('token');
36
+ const validation = (0, _validators_1.validateConfig)(team, token);
37
+ if (!validation.isValid) {
38
+ throw new _error_handler_1.KibelaError(`Configuration error: ${validation.error}\nRun "kibela config" to set up your credentials.`, 'CONFIG_ERROR');
39
+ }
40
+ try {
41
+ return new index_1.Kibela({ team: team, token: token });
42
+ }
43
+ catch (err) {
44
+ throw new _error_handler_1.KibelaError(`Failed to create Kibela client: ${err}`, 'CLIENT_ERROR');
45
+ }
46
+ }
47
+ function formatDate(dateString) {
48
+ const date = new Date(dateString);
49
+ return date.toLocaleString();
50
+ }
51
+ function displayToken(token) {
52
+ return (0, _validators_1.sanitizeToken)(token);
53
+ }
54
+ // Re-export frontmatter utilities
55
+ var frontmatter_1 = require("./frontmatter");
56
+ Object.defineProperty(exports, "generateFrontmatter", { enumerable: true, get: function () { return frontmatter_1.generateFrontmatter; } });
57
+ Object.defineProperty(exports, "sanitizeFileName", { enumerable: true, get: function () { return frontmatter_1.sanitizeFileName; } });
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/utils/index.ts"],"names":[],"mappings":";;;AAOA,0BAEC;AAED,sBAEC;AAED,oBAEC;AAED,oBAEC;AAED,sCAEC;AAED,8BAoBC;AAED,gCAGC;AAED,oCAEC;AAxDD,uDAAoD;AACpD,yDAAsD;AACtD,uCAAqC;AACrC,sCAA0C;AAC1C,gDAA+D;AAC/D,sDAAgD;AAEhD,SAAgB,OAAO,CAAC,OAAe;IACrC,OAAO,CAAC,GAAG,CAAC,eAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,SAAgB,KAAK,CAAC,OAAe;IACnC,OAAO,CAAC,KAAK,CAAC,eAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,SAAgB,IAAI,CAAC,OAAe;IAClC,OAAO,CAAC,GAAG,CAAC,eAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,IAAI,CAAC,OAAe;IAClC,OAAO,CAAC,GAAG,CAAC,eAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,iBAAO,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAgB,SAAS;IACvB,MAAM,IAAI,GAAG,sBAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,sBAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAA,4BAAc,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,4BAAW,CACnB,wBAAwB,UAAU,CAAC,KAAK,mDAAmD,EAC3F,cAAc,CACf,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,cAAM,CAAC,EAAE,IAAI,EAAE,IAAK,EAAE,KAAK,EAAE,KAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,4BAAW,CACnB,mCAAmC,GAAG,EAAE,EACxC,cAAc,CACf,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,UAAU,CAAC,UAAkB;IAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;AAC/B,CAAC;AAED,SAAgB,YAAY,CAAC,KAAa;IACxC,OAAO,IAAA,2BAAa,EAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,kCAAkC;AAClC,6CAAsE;AAA7D,kHAAA,mBAAmB,OAAA;AAAE,+GAAA,gBAAgB,OAAA"}
@@ -1,6 +1,5 @@
1
1
  export * from './http/client';
2
2
  export * from './graphql/client';
3
- export * from './cli/command';
4
3
  export * from './terminal/colors';
5
4
  export * from './terminal/spinner';
6
5
  export * from './terminal/prompt';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,OAAO,CAAC"}
@@ -16,7 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./http/client"), exports);
18
18
  __exportStar(require("./graphql/client"), exports);
19
- __exportStar(require("./cli/command"), exports);
20
19
  __exportStar(require("./terminal/colors"), exports);
21
20
  __exportStar(require("./terminal/spinner"), exports);
22
21
  __exportStar(require("./terminal/prompt"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,gDAA8B;AAC9B,oDAAkC;AAClC,qDAAmC;AACnC,oDAAkC;AAClC,yDAAuC;AACvC,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,oDAAkC;AAClC,qDAAmC;AACnC,oDAAkC;AAClC,yDAAuC;AACvC,wCAAsB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kibela-api-client",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Kibela API client for Node.js with CLI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare const groupsCommand: Command;
3
- //# sourceMappingURL=groups.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,aAAa,SAgDtB,CAAC"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.groupsCommand = void 0;
7
- const commander_1 = require("commander");
8
- const chalk_1 = __importDefault(require("chalk"));
9
- const utils_1 = require("../utils");
10
- exports.groupsCommand = new commander_1.Command('groups')
11
- .description('List all groups')
12
- .option('-a, --all', 'Show all groups (no pagination)')
13
- .action(async (options) => {
14
- const client = (0, utils_1.getClient)();
15
- if (!client)
16
- return;
17
- const spinner = (0, utils_1.createSpinner)('Fetching groups...');
18
- spinner.start();
19
- try {
20
- if (options.all) {
21
- const groups = await client.groups.getAll();
22
- spinner.stop();
23
- console.log(chalk_1.default.bold(`\nTotal groups: ${groups.length}\n`));
24
- groups.forEach((group) => {
25
- console.log(chalk_1.default.cyan(group.name));
26
- console.log(` ID: ${group.id}`);
27
- console.log(` Type: ${group.isPrivate ? 'Private' : 'Public'}`);
28
- if (group.description) {
29
- console.log(` Description: ${group.description}`);
30
- }
31
- console.log();
32
- });
33
- }
34
- else {
35
- const result = await client.groups.list({ first: 20 });
36
- spinner.stop();
37
- console.log(chalk_1.default.bold(`\nGroups (${result.totalCount} total):\n`));
38
- result.nodes.forEach((group) => {
39
- console.log(chalk_1.default.cyan(group.name));
40
- console.log(` ID: ${group.id}`);
41
- console.log(` Type: ${group.isPrivate ? 'Private' : 'Public'}`);
42
- if (group.description) {
43
- console.log(` Description: ${group.description}`);
44
- }
45
- console.log();
46
- });
47
- if (result.pageInfo.hasNextPage) {
48
- console.log(chalk_1.default.dim('Use --all flag to see all groups'));
49
- }
50
- }
51
- }
52
- catch (err) {
53
- spinner.stop();
54
- (0, utils_1.error)(`Failed to fetch groups: ${err}`);
55
- }
56
- });
57
- //# sourceMappingURL=groups.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groups.js","sourceRoot":"","sources":["../../../src/cli/commands/groups.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare const notesCommand: Command;
3
- //# sourceMappingURL=notes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notes.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/notes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,YAAY,SACY,CAAC"}